use*_*656 5 ruby-on-rails ruby-on-rails-3
所以我在http://railscasts.com/episodes/250-authentication-from-scratch上使用了"从头开始验证"railscast中的逻辑,它似乎工作,我可以坚持"你登录为. .."页面顶部的消息.
但是,如果我想做一些像提交帖子的日志这样的事情,我会碰到一点墙.
我不想通过新帖子中的隐藏字段提交它,因为我猜这有安全问题.
我不想在http://ruby.railstutorial.org/ruby-on-rails-tutorial-book的rails教程中使用"属于"逻辑,因为虽然它在技术上可以在这里工作,但我可能在将来需要记录谁创建了一个"属于"关系不存在的条目.
我试图做的是在我的post模型中创建一个"before save"函数调用,它指定一个"created_by"值,但我猜模型不能访问根据认证railscast创建的current_user.
所以现在我不知道怎么做这样的事情.
编辑:Ruby的新手,ERD的新手,所有这一切,但我所说的属于关系不存在的是,如果有一个评级系统的帖子,每个评级都属于一个帖子.但我也想记录提交每个评级的人.
如果我很清楚你遇到的问题是你无法current_user在模型中看到哪个用户当前使用了helper方法,你可以在保存之前created_by在Post控制器中设置帖子的属性,例如:
def create
@post = Post.new(params[:post])
@post.created_by = current_user.id
if @post.save
redirect_to whereyouwant_url, :notice => "Post successfully created"
else
render "new"
end
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12762 次 |
| 最近记录: |