Я перемещаю свое приложение с рельсов 4.2 на 5.2, в этом переходе я наткнулся на ошибку, которую я не знаю, как исправить.Этот фрагмент кода был написан для меня, так как я не имел ни малейшего понятия, как его выполнить в то время.Мой стол для людей, внутри этого стола боссы и не боссы, и эти не боссы должны быть в состоянии быть прикрепленными к боссам.
1002 * В новой области развития, когда я представляю свою форму для обновления человека, который "Boss" должен быть
null
Я получаю следующее:
1 error prohibited this person from being saved: Boss must exist
Контроллер:
def edit
@person = Person.find(params[:id])
end
1009 * Модель:
belongs_to :boss, class_name: 'Person'
has_many :subordinates, class_name: 'Person', foreign_key: 'boss_id'
validates_presence_of :user_name, :position, :fname, :lname
Схема:
t.integer "boss_id"
t.index ["boss_id"], name: "index_people_on_boss_id"
Форма:
<% if @person.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@person.errors.count, "error") %> prohibited this person from being saved:</h2>
<ul>
<% @person.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<fieldset>
...many fields...
</fieldset>
<fieldset>
<label>
Boss
<%= f.select :boss_id, [[" ", :null], [name, 1], [name, 2], ...etc ] %>
</label>
</fieldset>
<%= f.submit %>
<% end %>
Я не знаю, где еще искать ответк этому.