Ruby on rails Rails可以在控制器的实例方法中分配类变量吗?
在Rails中,我可以创建一个可以在不同实例方法之间共享的类变量吗?尽量避免不必要的电话。抱歉,伙计们,在最后一分钟从另一个开发者那里接管了这个项目。我已经两年没有编写Rails了,很高兴能重新开始 下面是示例代码:Ruby on rails Rails可以在控制器的实例方法中分配类变量吗?,ruby-on-rails,Ruby On Rails,在Rails中,我可以创建一个可以在不同实例方法之间共享的类变量吗?尽量避免不必要的电话。抱歉,伙计们,在最后一分钟从另一个开发者那里接管了这个项目。我已经两年没有编写Rails了,很高兴能重新开始 下面是示例代码: class Api::VideoEpisodesController < Api::ApiController # GET /video_episodes # GET /video_episodes.json def index # can I shar
class Api::VideoEpisodesController < Api::ApiController
# GET /video_episodes
# GET /video_episodes.json
def index
# can I share @@video_episodes with the set_video_episode method?
# or just @video_episodes = VideoEpisode.where(season_number: params[:season_number]) because can't do what I intend?
@@video_episodes = VideoEpisode.where(season_number: params[:season_number])
end
# GET /video_episodes/1
# GET /video_episodes/1.json
def show
set_video_episode
end
private
# Use callbacks to share common setup or constraints between actions.
def set_video_episode
# would I be able to access @@video_episodes from the index method or
# is the best way to go instance variable:
# @video_episodes = VideoEpisode.where(season_number: params[:season_number])
# @video_episode = @video_episodes.find(params[:id])
@video_episode = @@video_episodes.find(params[:id])
end
end
您最好在Rails 5之前设置before_操作或before_过滤器
class Api::VideoEpisodesController < Api::ApiController
before_action :set_video_episode, only: [:index, :show]
def index
end
def show
end
private
def set_video_episode
@video_episode = VideoEpisode.find(params[:id])
end
end
现在您可以在索引和显示操作中访问@video_插曲