ruby-on-rails - Rails form_for 提交按钮什么都不做

标签 ruby-on-rails forms

我确定我只是在这里遗漏了一些简单的东西,但我终究无法弄清楚是什么。

我有一个可以更新模型属性的表单。

            <%= form_for @gf do |f| %>
                    <div class="form-field">
                        <%= f.text_field :first_name, :placeholder => "First Name" %>
                    </div>
                    <div class="form-field">
                        <%= f.text_field :last_name, :placeholder => "Last Name" %>
                    </div>
                    <div class="form-field">
                        <%= f.text_field :address_line_one, :placeholder => "Address" %>
                    </div>
                    <div class="form-field">
                        <%= f.text_field :address_line_two, :placeholder => "Address (second line)" %>
                    </div>
                    <div class="form-field">
                        <%= f.text_field :city, :placeholder => "City" %>
                    </div>
                    <div class="form-field">
                        <%= f.text_field :state, :placeholder => "State" %>
                    </div>
                    <div class="form-field">
                        <%= f.text_field :zip_code, :placeholder => "Zip Code" %>
                    </div>
                    <div class="form-field">
                        <%= f.text_field :phone_number, :placeholder => "Phone Number" %>
                    </div>
                    <div class="form-field">
                        <%= f.submit "Submit" %>
                    </div>
            <%end%>

相关的控制者是

def home 
    if current_user.girlfriends.all.count == 0
        @gf = Girlfriend.new
        @gf.user_id = current_user.id
    else
        @gf = current_user.girlfriends.first
    end     
end

def new
    raise
end

def create
    raise
end

def update
    raise
end

def delete
    raise
end

在我的路由文件中

resources :girlfriends

表单位于 /home 页面上,因此 @gf 变量已正确设置。表单使用适当的属性填写适当的字段。但是 - 当我点击 Submit 时没有任何反应。 URL 没有变化,页面上没有任何操作,我没有在我的任何 CRUD 操作中点击 raise ....我错过了什么?在此先感谢您的帮助。

编辑:这是实际呈现的 HTML。

<form accept-charset="UTF-8" action="/girlfriends/1" class="edit_girlfriend" id="edit_girlfriend_1" method="post"><div style="display:none"><input name="utf8" type="hidden" value="&#x2713;" /><input name="_method" type="hidden" value="patch" /><input name="authenticity_token" type="hidden" value="CIPzkLLWwmclyOwKpkphMJ5u8Saxhx6ajDq/NvW8Lfc=" /></div>
                    <div class="form-field">
                        <input id="girlfriend_first_name" name="girlfriend[first_name]" placeholder="First Name" type="text" value="Melissa" />
                    </div>
                    <div class="form-field">
                        <input id="girlfriend_last_name" name="girlfriend[last_name]" placeholder="Last Name" type="text" />
                    </div>
                    <div class="form-field">
                        <input id="girlfriend_address_line_one" name="girlfriend[address_line_one]" placeholder="Address" type="text" />
                    </div>
                    <div class="form-field">
                        <input id="girlfriend_address_line_two" name="girlfriend[address_line_two]" placeholder="Address (second line)" type="text" />
                    </div>
                    <div class="form-field">
                        <input id="girlfriend_city" name="girlfriend[city]" placeholder="City" type="text" />
                    </div>
                    <div class="form-field">
                        <input id="girlfriend_state" name="girlfriend[state]" placeholder="State" type="text" />
                    </div>
                    <div class="form-field">
                        <input id="girlfriend_zip_code" name="girlfriend[zip_code]" placeholder="Zip Code" type="text" />
                    </div>
                    <div class="form-field">
                        <input id="girlfriend_phone_number" name="girlfriend[phone_number]" placeholder="Phone Number" type="text" />
                    </div>
                    <div class="form-field">
                        <input name="commit" type="submit" value="Submit" />
                    </div>

最佳答案

听起来您的页面上有 JavaScript 阻止提交表单。

关于ruby-on-rails - Rails form_for 提交按钮什么都不做,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28270447/

相关文章:

php - 字段名/列名的动态更新 MySQL/PHP

php - 回显函数值不会传递给表单

ruby-on-rails - 如何遍历匹配正则表达式的数组元素?

ruby-on-rails - 即使在更新后,终端仍然显示旧版本的 rails

javascript - 删除动态表单字段 JS/HTML

php - PHP-表单,发布到同一页面,错误处理,防止重新提交

javascript - 使 <select> 选项自动为 "click"

ruby-on-rails - "rake test:functionals"是做什么的?

ruby-on-rails - Spree 不能有商品价格 >= 100 万,我应该编辑现有的事件记录迁移吗??

ruby-on-rails - Ruby 元编程 Q : Calling an external class method on after_save