首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在application_controller.rb中创建客户端以避免重复?

在application_controller.rb中创建客户端以避免重复?
EN

Stack Overflow用户
提问于 2015-03-04 08:52:23
回答 1查看 16关注 0票数 0

我已经通过Youtube_IT创业板学习了很多rails,现在我必须插入

代码语言:javascript
复制
@client = YouTubeIt::Client.new(:dev_key => "AI39 .. bGqx")

手动输入到每个控制器的def索引中,以便它可以出现在index.html.erb中。我注意到Rails有一个application_controller.rb,并认为它可能类似于布局的应用程序文件,那里的任何代码都是通用的。

我尝试在application_controller中创建一个索引方法,并在其中插入dev键,但没有成功。我能为所有控制器设置一次的方法是什么?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-04 08:58:29

可以将以下内容添加到您的application_controller.rb

代码语言:javascript
复制
before_action :set_youtube_client, only: [:index]

private
def set_youtube_client
  @client = YouTubeIt::Client.new(:dev_key => 'AI39 ... bGqx')
end

您可以在aplication_controller.rb中添加以下内容

代码语言:javascript
复制
def youtube_client
  @youtube_client ||= YouTubeIt::Client.new(:dev_key => 'AI39 ... bGqx')
end
helper_method :youtube_client

然后在视图中使用youtube_client而不是@client

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28850118

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档