需要一些關於我的rails應用程序中的一些關聯的幫助。得到一個「不能批量分配受保護的屬性:rss_readers」的警告,並沒有找出問題所在。不能批量分配受保護的屬性
class Scraper < ActiveRecord::Base
attr_accessible :name, :link, :rss_reader_attributes
has_one :rss_reader
accepts_nested_attributes_for :rss_reader
而且accociation:
class RssReader < ActiveRecord::Base
attr_accessible :title, :address, :content
belongs_to :scraper
在軌安慰其工作正常。
> scraper = Scraper.new
> scraper.build_rss_reader
> scraper.attributes={:rss_reader_attributes=>{:address => "asdsad"}}
但在控制器中,我得到了警告。
def new
@scraper = Scraper.new
@scraper.build_rss_reader
end
def create
@scraper = Scraper.new(params[:scraper])
@scraper.build_rss_reader
if @scraper.save
redirect_to :show
else
render :new
end
並且那是新的視圖
<%= form_for(@scraper) do |f| %>
<div class="field">
<%= f.label :name %><br />
<%= f.text_field :name %>
</div>
<%= f.fields_for(@scraper.rss_reader) do |rss| %>
<div class="field">
<%= rss.label :address %><br />
<%= rss.text_field :address %>
</div>
<% end %>
<div class="actions">
<%= f.submit "Submit" %>
</div>
<% end %>
我那吼聲是所有正確的,但我得到的警告。任何人有想法?
感謝
一個更好的主意並沒有工作。我將rss_reader添加到:attr_accessible。得到這個錯誤。 RssReader(#70085183525060)預計,得到ActiveSupport :: HashWithIndifferentAccess(#9179800) – mibo 2012-02-16 11:05:28