【问题标题】:Form tag not showing up in haml file表单标签未显示在haml文件中
【发布时间】:2016-10-19 21:48:26
【问题描述】:

我正在尝试在模式中获取表单。表单标记之后的所有内容都显示出来,但不是实际的表单标记无法提交。我在其他页面中使用了相同的表单,除了这里之外它确实有效。

  AdGroups/edit.html.haml
   %div(id="openModal" class="modalDialog")
    %div
        %a(href="#close" title="Close" class="close")
        %div
        = form_tag car_path, :url => {:controller => 'cars', :action => 'create'}, :html => {:multipart => true,:id =>'car-form'} do |f|
            %div(class="control-group")
                = label_tag             "Year"
                %br
                = text_field_tag    "year"
            %br

            %div(class="control-group")
                = label_tag             "make"
                %br
                %select{ :name => "make", :class => "chosen" }
                    - @makes.each do |m|
                        %option{:value => m.id}= "#{m.name}"
            %br

            %div(class="control-group")
                = label_tag             "Model"
                %br
                = text_field_tag    "model"
            %br

            %div(class="control-group")
                = label_tag             "Trim"
                %br
                = text_field_tag    "trim"
            %br

            %div(class="control-group")
                = label_tag             "Car Image(s)"
                %br
                = file_field_tag    "files[]"
            %br


= submit_tag

当我检查表单而不是表单标签时,它有一个输入标签。知道为什么吗?

<div class="modalDialog" id="openModal">
    <div>
      <a class="close" href="#close" title="Close"></a>
      <div></div>
      <input name="utf8" type="hidden" value="✓"><input type="hidden" name="authenticity_token" value="fc2o2n0JJlcMISfYQACsF0mNSrVkKnoa37eF2dDrGPPIu9CnJVVaNFz3drg8dAoOf1pm>

【问题讨论】:

  • 您的= submbit_tag 行必须在= form_tag
  • @fanta 在其中移动了提交标签,但 form_tag 仍然没有出现。
  • 只是让您知道-它没有用输入替换表单标签-这些输入始终显示为表单...但它可能缺少表单标签。您能否向我们展示更多生成的 html(主要是位于这两个输入之上的内容)?注意:编辑您的问题并将其添加到那里,不要将代码放在 cmets 中,因为 cmets 中的代码格式是可怕的:P :)
  • @TarynEast 哦,是的,我编辑了我的问题。不用担心

标签: ruby-on-rails forms haml


【解决方案1】:

这可能需要尝试几次...

您的form_tag 看起来可能有误。试试:

= form_tag cars_path, multipart: true, id: 'car-form' do

你可以试试只是这个(看看你是否可以得到一个空的表单来渲染):

#openModal.modalDialog
  = form_tag cars_path, multipart: true, id: 'car-form' do
    foo

确保您使用的是cars_path,而不是car_path

【讨论】:

  • 谢谢,我试过了,但还是一样的情况,表格没有出现。我也试过form_for。有趣的是,我什至没有收到错误。
  • 如果你有兴趣,我在这里建立一个聊天chat.stackoverflow.com/rooms/126168/…
  • 我不能用它,因为它说我需要20点声望。感谢您的帮助。
  • 我修复了它,出于某种奇怪的原因,当我将整个文件更改为 erb 时它工作了。
猜你喜欢
  • 1970-01-01
  • 2015-11-12
  • 1970-01-01
  • 1970-01-01
  • 2015-06-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-01
相关资源
最近更新 更多