неопределенный метод
'sub_agriculture_sub_agriculture_sub_agriculture_sub_agriculture_sub_agriculture_sub_agricultures_path' для # <#: 0x00007f5ec01b4b50 * 100 </p> 100 *1006* 100 * 100 * 600 * 100 * 100 * 600 * 1001011 *
Я строю систему оценок студентов и в настоящее время испытываю проблемы с ресурсами (я думаю) Отношения определяются следующим образом:
Scorecard.rb
..
has_one :sub_agriculture
sub_agriculture.rb
..
belongs_to :scorecard
routes.rb
..
resources :scorecards
resources :sub_agricultures
Обычно в sub_agricultures_controller.rb
можно использовать;
def new
@sub_agriculture = SubAgriculture.new
end
... потому что это приводит к
#<SubAgriculture id: nil, score: nil, created_at: nil, updated_at: nil, scorecard_id: nil>
Мне нужно создать несколько из них для их соответствующих карт показателей в одной форме ввода.
Однако выберите только scorecards
иметь sub_agriculture
прикрепленный к ним. (не все слушатели берут тему сельское хозяйство). Поэтому я запустил запрос на Scorecard
, где я pluck(:id)
, потому что я не видел его эффективным, используя все отношения active_record. Затем я получаю массив идентификаторов вроде этого;[1, 2, 3, 4, 5, 6]
. Это коллекция scorecard_ids из запроса.
Так для каждого Id;Мне нужно создать оценку sub_agriculture для него. Для этого случая;шесть новых экземпляров sub_agriculture. Для этого я сделал это на sub_agricultures_controller.rb
def new
sc = Scorecard.scorecard_with_agriculture
@sub_agriculture = sc.map { |s|SubAgriculture.new(:scorecard_id => s) }
end
Это выплевывает этот массив;
=>[#<SubAgriculture id: nil, score: nil, created_at: nil, updated_at: nil, scorecard_id: 1>, #<SubAgriculture id: nil, score: nil, created_at: nil
, updated_at: nil, scorecard_id: 2>, #<SubAgriculture id: nil, score: nil, created_at: nil, updated_at: nil, scorecard_id: 3>, #<SubAgriculture id:
nil, score: nil, created_at: nil, updated_at: nil, scorecard_id: 4>, #<SubAgriculture id: nil, score: nil, created_at: nil, updated_at: nil, score
card_id: 5>, #<SubAgriculture id: nil, score: nil, created_at: nil, updated_at: nil, scorecard_id: 6>]
Что я и имел в виду;действие /sub_agriculture/new
поражает меня этой ошибкой
NoMethodError в субагрикулярных культурах # new
неопределенный метод `sub_agriculture_sub_agriculture_sub_agriculture_sub_agriculture_sub_agriculture_sub_agriculture_sub_agricultures * * 10 * 050 * 0505_5f5_5b5_p_0455_5_4_0455_1* С выделением этой конкретной строки в новой форме
<%= form_with(model: sub_agriculture, local: true) do |form| %>
Мне нужно создать шесть sub_agricultures в одной форме. Куда я иду не так?