У меня есть задание со многими оценками, и я использую поля для прохождения вложенных оценочных данных.fields_for передачи значения моему собственному помощнику
Об оценке У меня есть значение ID, которое я хочу перевести на его имя. Я хочу передать этот идентификатор помощнику и вернуть имя строки, но, похоже, я не могу получить значение ID?
Мой код
<%= form_for assignment do |f| %>
<%= f.fields_for :assignmentassessments do |ff| %>
<div class="row">
<div class="col-4">
<% strength_name(:strength_id) %>
</div>
И Хелпер
module AssignmentsHelper
def strength_name(id)
if id != nil
@strength = Strength.find_by(id: id)
@strength.name
end
end
end
Я получаю undefined method name for nil:NilClass
, потому что, когда я прохожу :strength_id
он приходит через, как nil
Спасибо за руководство. Я все еще немного смущен о том, как получить значение. Если я делаю 'ff.text_field: force_id', я получаю текстовое поле с нужным значением в нем – user1107201
@ user1107201 извините, но я не понимаю, что вы имеете в виду, можете ли вы описать больше информации для меня? что именно вы не можете получить? –
Я не понимаю, как я могу передать ': strength_id' своему помощнику и использовать значение ID для получения соответствующего имени из таблицы Сильные стороны так же, как' ff.text_field' принимает ': force_id' и создает текстовое поле и помещает в него фактическое значение id – user1107201