0

您好,我刚开始使用 Ruby on Rails,它是一种非常酷的语言。但是在完成本教程后,我遇到了一个我不太理解的错误,因为我遵循了 ruby​​onrails.org 上的入门教程

这是我认为给出问题的代码

<%= form.fields_for :tags do |tag_form| %>
<div class="field">
  <%= tag_form.label :name, 'Tag:' %>
  <%= tag_form.text_field :name %>
</div>
<% unless tag_form.object.nil? || tag_form.object.new_record? %>
  <div class="field">
    <%= tag_form.label :_destroy, 'Remove:' %>
    <%= tag_form.check_box :_destroy %>
  </div>
<% end %>

错误是

在此处输入图像描述

4

2 回答 2

2

正确的做法是:

修改您的 Post 类并添加标签属性

attr_accessible :content, :name, :title, :tags_attributes
于 2013-03-08T16:38:39.353 回答
1

每当您向模型添加关联或新字段时,如果您正在使用attr_accessible,您还需要将其添加到模型中。attr_accessible是一种允许通过批量分配修改这些字段的方法。例如,您不希望在您的用户模型中包含管理员布尔值,attr_accessible因为这将允许用户注入并将自己提升为管理员状态。这与 Github 几个月前的问题类似。

在您的情况下,您希望在 Post 模型中添加:tag_attributes您的attr_accessible行。

于 2013-03-08T16:46:35.183 回答