首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >attr_accessible中的模型

attr_accessible中的模型
EN

Stack Overflow用户
提问于 2013-02-09 03:27:58
回答 2查看 287关注 0票数 0

Rails中有许多关于模型之间关系的示例,但它们似乎都遗漏了模型的attr_accessible部分。

我正在寻找关于attr_accessible的一些最佳实践,我发现了一些相互矛盾的建议。我可以/应该:

--是否将外键放入attr_accessible?

代码语言:javascript
复制
Class Post
  attr_accessible :name, :user_id

  belongs_to :user
end
Class User
  attr_accessible :first, :last

  has_many :posts
end

--将完整的模型放入attr_accessible?

代码语言:javascript
复制
Class Post
  attr_accessible :name, :user

  belongs_to :user
end
Class User
  attr_accessible :first, :last

  has_many :posts
end
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-02-09 04:09:55

与Kaeros所说的相反,我实际上建议不要允许外键字段是可批量分配的。原因是你打开了一种简单的方式,让别人在添加帖子时发送不同的user_id。这可能就是为什么你找到的例子不包括外键的原因。

解决这个问题的最好方法是在为用户添加新帖子时使用集合构建器方法:

代码语言:javascript
复制
user.posts.create(params[:post])

如果你选择不遵循这个建议,那么它实际上取决于你是如何批量赋值的。如果您的散列包含:user_id,那么您应该使其可访问,如果它包含:user,则使用该散列。如果您不确定,您可以随时将两者都设置为可访问。

票数 2
EN

Stack Overflow用户

发布于 2013-02-09 03:39:39

在attr_accessible中使用外键似乎是正常的,对我来说也是默认选项。您可以看到here指南也使用此表单。

向attr_accessible添加型号名称对我也很有效。

我更喜欢第一种方法,所以我很容易知道我正在处理外键。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14779943

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档