jmk*_*oll 4 forms ruby-on-rails-3
感谢您的耐心等待.对Rails来说还是个新手.
使用Rails 3.2
为简单的应用程序制作注册页面.我的问题是我的表单上的提交按钮不会产生任何影响,无论表单中的信息是否有效.
用户模型和数据库似乎都工作正常.如果我从rails控制台手动添加用户,它会将其添加到数据库中.据我所知,问题似乎是由form_for生成的形式.
这是有问题的页面:
<% provide(:title, 'Sign up') %>
<h1>Sign up</h1>
<div class="row">
<div class="span6 offset3>
<%= form_for(@user) do |f| %>
<%= render 'shared/error_messages' %>
<%= f.label :name %>
<%= f.text_field :name %>
<%= f.label :email %>
<%= f.text_field :email %>
<%= f.label :password %>
<%= f.password_field :password %>
<%= f.label :password_confirmation, "Confirmation" %>
<%= f.password_field :password_confirmation %>
<%= f.submit "Create my account", class: "btn btn-large btn-primary" %>
<% end %>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
这是我的用户控制器:
def show
@user = User.find(params[:id])
end
def new
@user = User.new
end
def create
@user = User.new(params[:user])
if @user.save
flash[:success] = "Thank you for signing up! Please check your email to confirm your account."
redirect_to @user
else
render 'new'
end
end
end
Run Code Online (Sandbox Code Playgroud)
提交不会导致任何类型的错误 - 根本不会导致任何事情发生.所以日志中没有有价值的信息.
提前感谢您的任何见解.
编辑:从/shared/_error_messages.html.erb部分添加代码
<% if @user.errors.any? %>
<div id="error_explanation">
<div class="alert alert-error">
The form contains <%= pluralize(@user.errors.count, "error") %>.
</div>
<ul>
<% @user.errors.full_messages.each do |msg| %>
<li>* <%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
Run Code Online (Sandbox Code Playgroud)
jmk*_*oll 10
那么仔细编码就是一个很好的小课:
<div class="row">
<div class="span6 offset3>
<%= form_for(@user) do |f| %>
Run Code Online (Sandbox Code Playgroud)
本来应该:
<div class="row">
<div class="span6 offset3**"**>
<%= form_for(@user) do |f| %>
Run Code Online (Sandbox Code Playgroud)
结束标签可以产生相当大的差异.
| 归档时间: |
|
| 查看次数: |
11186 次 |
| 最近记录: |