出于某种原因,我不断收到此错误。
找不到没有ID的相册
但这没有意义,因为在我的debug.params中它说:
{ “UTF8”=> “中✓”,
“authenticity_token”=> “中os9DVVZS6 // bs3Ne2Xfrh4VnKXNtDXkZaE4s / 3iQagE =”,
“视频”=> { “URL”=> “中www.youtube.com/watch?v=yIRuri1AB0I”,
“album_id”=> “中1”},
“提交”=> “中接着”}
这是控制器:
类VideosController< ApplicationController中
包括AlbumsHelper
before_filter:signed_in_user,仅限:[:create,:destroy] #add update later
before_filter:correct_user,only :: destroy
def show
@video = Video.find(params[:id])
end
def new
if signed_in?
@album = Album.find(params[:album_id])
@video = @album.build_video
end
end
def create
@album = Album.find(params[:album_id])
@video = @album.build_video(params[:video])
if @video.save
flash[:success] = "Success!"
redirect_to new_small_reward_path(:album_id => @album)
else
render 'new'
end
end
端
我甚至在表单中添加了一个隐藏字段,我认为不应该这样做,但我决定尝试:
在您点击提交之前,网址显示/ videos / new?album_id = 1。
如果我用这个写控制器,这个问题就完全消失了:
def new
@@ album = Album.find(params [:album_id])
端
然后继续在整个事情中使用类变量。但有人告诉我,不鼓励使用类变量。我该怎么做呢?
答案 0 :(得分:0)
@album = Album.find(params [:video] [:album_id])