Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails嵌套字段为零,但仍显示在视图中_Ruby On Rails_Forms_Nested - Fatal编程技术网

Ruby on rails Rails嵌套字段为零,但仍显示在视图中

Ruby on rails Rails嵌套字段为零,但仍显示在视图中,ruby-on-rails,forms,nested,Ruby On Rails,Forms,Nested,我试图在表单中显示嵌套属性,即使嵌套属性为nil。比如说 <%= f.fields_for :package_survey_image do |image_form|%> <% if PackageSurvey::Image.where(id:f.object[:package_survey_image_id]).count != 0 %> <%= image_tag PackageSurvey::Image.find(f.object[:pac

我试图在表单中显示嵌套属性,即使嵌套属性为nil。比如说

<%= f.fields_for :package_survey_image do |image_form|%>
  <% if PackageSurvey::Image.where(id:f.object[:package_survey_image_id]).count != 0 %>
        <%= image_tag PackageSurvey::Image.find(f.object[:package_survey_image_id]).logo.url(:medium) %>
  <% end %>
        <%= image_form.file_field :logo %>
<%end %>


因此,如果package_survey_图像为nil或空,我希望视图显示一个浏览按钮以上载图像。我不想在控制器中实例化package\u survey\u image。

即使您不想在控制器中实例化它,也应该在控制器中实例化它。我将在控制器中执行以下操作:

@obj.image.build if @obj.image.blank?
然后在视图中:

<%= f.fields_for :package_survey_image do |image_form|%>
<%= image_form.file_field :logo %>
<% end %>

<% if @obj.package_survey_image %>
# Display the image. 
<% end %>

#显示图像。