2012-06-12 2 views
1

Когда в «редактировать» или «шоу» это приходит:Не удается определить ActiveRecord :: SubclassNotFound в реестрах # edit?

ActiveRecord :: SubclassNotFound в реестрах # редактировать

«Механизм наследования одной таблицы не удалось найти подкласс:.„Самолет“Эта ошибка возникает потому, что тип столбца зарезервирован для хранения класса в случае наследования. Пожалуйста, переименуйте этот столбец, если вы не предполагали, что он будет использоваться для хранения класса наследования или перезаписать Present.inheritance_column, чтобы использовать другой столбец для этой информации «.

25: </div> 
26: 
27: <div class="field1"> 
28: <%= f.fields_for :presents do |builder| %> 
29: <%= render 'present_fields', f: builder %> 
30: <% end %> 
31: </div> 

Вот Форма регистрации:

<%= nested_form_for(@registry) do |f| %> 
<% if @registry.errors.any? %> 
<div id="error_explanation"> 
<h2><%= pluralize(@registry.errors.count, "error") %> prohibited this registry from  
being saved:</h2> 

    <ul> 
    <% @registry.errors.full_messages.each do |msg| %> 
    <li><%= msg %></li> 
    <% end %> 
    </ul> 
</div> 
<% end %> 


<%= f.label :due_date %><br /> 
<%= f.date_select :due_date, :rows => 5 %> 


<%= f.label :theme %><br /> 
<%= f.text_field :theme, :class => 'field2' %> 

<div class="field1"> 
<%= f.label :gender %><br /> 
<%= f.text_field :gender %> 
</div> 

<div class="field1"> 
<%= f.fields_for :presents do |builder| %> 
<%= render 'present_fields', f: builder %> 
<% end %> 
</div> 

<%= link_to_add_fields "Add Presents", f, :presents %> 

<div class="actions"> 
<%= f.submit %> 
</div> 
<% end %> 

В presents_fields:

<div class="field1"> 
<table> 
<tr> 
<td> <%= f.label :type, "Present Type" %> </td> 
<td> <%= f.text_field :type, :class => 'field2' %> </td> 
<td> <%= f.label :Quantity, "Quantity" %> </td> 
<td> <%= f.number_field :quantity, :class => 'field3' %> </td> 
<td> <%= f.label :color, "Color" %> </td> 
<td> <%= f.text_field :color, :class => 'field2' %> </td> 
<td> <%= f.label :brand, "Brand" %> </td> 
<td> <%= f.text_field :brand, :class => 'field2' %> </td> 
<td> <%= f.link_to_remove "Remove this present" %></td> 
</tr> 
</table> 
</div> 

ответ

3

Либо переименовать или переписать в виде ошибок говорит перезапись через что-то вроде

set_inheritance_column "not_sti" 

источник: http://my.safaribooksonline.com/book/web-development/ruby/9780132480345/advanced-active-record/ch09lev1sec5

+0

Почему я получаю «Mysql :: Error: Unknown столбца 'accounts.not_sti' в 'где предложение': SELECT COUNT (*) AS count_all FROM' accounts' WHERE (('accounts'.'not_sti '= ''))"? – peterpengnz

+0

Он работает в режиме поиска, но не работает в методе count. – peterpengnz

Смежные вопросы