我有两个模型(Articles
和Documents
),我正在使用第三个控制器(称为Share
)。我在该控制器中编写了这种方法来跟踪文章等的点击次数:
def read_more(a)
@article = Article.find(a)
impressionist(@article)
end
出于某些奇怪的原因,我的应用会尝试找到ID为17的Document
,而不是Article
。我完全难过了。
有什么想法吗?干杯!
修改
日志读数为:
Started GET "/share/read_more/17" for 127.0.0.1 at 2012-12-17 09:37:49 +1100
Processing by ShareController#show as JS
Parameters: {"ftp"=>"read_more", "id"=>"17"}
Document Load (0.1ms) SELECT "documents".* FROM "documents" WHERE "documents"."id" = ? LIMIT 1 [["id", "17"]]
Completed 500 Internal Server Error in 1ms
ActiveRecord::RecordNotFound (Couldn't find Document with id=17):
答案 0 :(得分:1)
如果有其他人遇到类似的问题,我想出了答案。
def read_more
@article = Article.find(params[:id])
impressionist(@article)
render :json => "Read."
end
显然你不能在控制器方法中有参数。