rails 中未显示嵌套形式的输入
input in nested form is not shown in rails
我有一个 Rails 应用程序,它有两个模型:问题和可能的答案。一个问题有许多可能的答案,一个可能的答案属于一个问题。在添加问题时,我想添加可能的答案。但是,我无法显示可能的答案输入。以下是可能导致问题的文件:
questions_controller.rb
:
def new
@question = @poll.questions.build
4.times { @question.possible_answers.build }
end
question.rb
:
has_many :possible_answers
accepts_nested_attributes_for :possible_answers
_form.html.haml
:
-f.fields_for :possible_answers do |p|
=p.text_field :title
我该如何解决这个问题?
哈...我明白了。虽然花了我一段时间。
在erb
中,<% ... %>
和<%= ... %>
的区别在于前者只分析,而后者则显示结果。
同样的原则也适用于使用其他引擎时(slim
、haml
等)。
要分析,请使用 -
,但要同时显示,请使用 =
。
因此,要将以上内容应用于您的案例,嵌套属性的行必须从仅分析更改为同时显示。
即:改变这个:
-f.fields_for :possible_answers do |p|
=p.text_field :title
对此:
=f.fields_for :possible_answers do |p|
=p.text_field :title
这应该适合你。
= f.fields_for :possible_answers do |p|
=p.text_field :title
当我第一次开始 Rails 时,我花了一天时间才弄明白。
我有一个 Rails 应用程序,它有两个模型:问题和可能的答案。一个问题有许多可能的答案,一个可能的答案属于一个问题。在添加问题时,我想添加可能的答案。但是,我无法显示可能的答案输入。以下是可能导致问题的文件:
questions_controller.rb
:
def new
@question = @poll.questions.build
4.times { @question.possible_answers.build }
end
question.rb
:
has_many :possible_answers
accepts_nested_attributes_for :possible_answers
_form.html.haml
:
-f.fields_for :possible_answers do |p|
=p.text_field :title
我该如何解决这个问题?
哈...我明白了。虽然花了我一段时间。
在erb
中,<% ... %>
和<%= ... %>
的区别在于前者只分析,而后者则显示结果。
同样的原则也适用于使用其他引擎时(slim
、haml
等)。
要分析,请使用 -
,但要同时显示,请使用 =
。
因此,要将以上内容应用于您的案例,嵌套属性的行必须从仅分析更改为同时显示。
即:改变这个:
-f.fields_for :possible_answers do |p|
=p.text_field :title
对此:
=f.fields_for :possible_answers do |p|
=p.text_field :title
这应该适合你。
= f.fields_for :possible_answers do |p|
=p.text_field :title
当我第一次开始 Rails 时,我花了一天时间才弄明白。