我应该手动将 user_id 添加到隐藏表单中吗?或者有更好的方法吗?
我有模型:
class Project < ActiveRecord::Base
belongs_to :user
end
class User < ActiveRecord::Base
has_many :projects
end
在我看来:
<%= simple_form_for @project do |f| %>
<%= f.hidden_field :value => current_user.id %>
<% end %>
或者还有其他方法吗?我想如果模型相互关联,它会自动将 user_id 添加到项目数据库中吗?
谢谢!
编辑:将所有行程转换为项目,以便其他需要帮助的人知道
最佳答案
没有。这不应该是形式,因为每个人都可以改变形式的隐藏值。
假设您使用的是强参数
def create
@project = Project.new(project_params)
@project.save # or something else
end
def project_params
params.require(:project).permit(something_permitted_here)
.merge(user_id: current_user.id)
end
关于ruby-on-rails - Ruby on Rails : Saving user id manually? 或者有更好的方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31499049/