加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 在Rails中,为控制器和模型提供有用的功能

发布时间:2020-12-16 20:54:23 所属栏目:百科 来源:网络整理
导读:假设我有一个函数trim_string(string),我希望在模型和控制器中的整个Rails应用程序中使用它.如果我把它放在应用程序助手中,它会进入控制器.但通常不需要从模型中使用应用程序帮助程序.那么你在哪里放置了你想要在模型和控制器中使用的通用代码? 解决方法 回
假设我有一个函数trim_string(string),我希望在模型和控制器中的整个Rails应用程序中使用它.如果我把它放在应用程序助手中,它会进入控制器.但通常不需要从模型中使用应用程序帮助程序.那么你在哪里放置了你想要在模型和控制器中使用的通用代码?

解决方法

回答具体问题“你在哪里放置了你想要在模型和控制器中使用的通用代码?”:

把它放在lib文件夹中.将加载lib文件夹中的文件,其中的模块将可用.

更详细地说,使用问题中的具体示例:

# lib/my_utilities.rb

module MyUtilities
  def trim_string(string)
    do_something
  end    
end

然后在您想要的控制器或模型中:

# models/foo.rb

require 'my_utilities'

class Foo < ActiveRecord::Base
  include MyUtilities

  def foo(a_string)
    trim_string(a_string)
    do_more_stuff
  end
end

# controllers/foos_controller.rb

require 'my_utilities'

class FoosController < ApplicationController

  include MyUtilities

  def show
    @foo = Foo.find(params[:id])
    @foo_name = trim_string(@foo.name)
  end
end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读