ruby-on-rails – Rails 3 – 在隐藏表单字段中使用user.id与使用关联

好的,目前我有一张表格
<div class="field">
  <%= f.label :title %><br/>
  <%= f.text_field :title %><br/>
  <%= f.label :itunesurl %><br />
  <%= f.text_field :itunesurl %><br />
  <%= f.hidden_field :user_id,:value => current_user.id %>
</div>
<div class="actions">
  <%= f.submit %>
</div>

它将current_user.id传递给我的“app”模型的create方法,该方法在保存之前将其创建为:

@app = App.new(params[:app])

但是我有(伪代码)的关联

user has_many apps
apps belongs_to user

问题:在create方法中执行类似的操作是否更安全(因此表单不会被修改)?

@user = current_user
@app = @user.apps.create(params[:app])

如果是这样……我究竟将如何实际实现上面的代码(它在语法上不正确..只是伪)?

谢谢!

解决方法

是的,使用您建议的第二种方式是最好的方法
@user = current_user
@app = @user.apps.create(params[:app])

另外,请确保您保护自己免受大规模任务的影响,请阅读此http://stephensclafani.com/2010/01/04/ruby-on-rails-secure-mass-assignment/

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...