生成设计后:查看我的sign_up页面不会触发任何操作

时间:2016-02-01 15:17:18

标签: ruby-on-rails devise

在我用于学习Rails的演示应用中 - 使用模型user和一个post,我安装了gem Devise。我启用了终端上的用户模型设计rails g devise User,运行rake db:migrate,重新启动rails s
当我第一次使用localhost:3000 / users / sign_up(这是我注册新用户的URL)时,我可以成功创建一个新用户,Devise发出通知flash等等。一切顺利。 当我想自定义sign_up页面的布局时,我的问题就出现了。 然后我继续rails g devise:views。我可以更改与网址devise/registration/new.html.erb对应的视图/users/signup的布局,但页面不再触发任何操作。 我在rails s中看到/users/sign_updevise/registrations#new处理,但即使我尝试使用不同的电子邮件地址进行注册,也不会再显示任何通知,页面也不会更改,它会总是显示注册表单。 这是代码https://github.com/Adsidera/Indielitblog 如果我的问题看起来很傻,请抱歉,我只是一个初学者...... :( 提前致谢 安娜

2 个答案:

答案 0 :(得分:0)

我找到了解决方案。显然,这是由于我添加了一个表单控件html标签,并以某种方式干扰了设计控制器。 将定制仅保留给div容器 - 流体和几个基本的变化解决了这个问题。不管怎样,谢谢!

答案 1 :(得分:0)

刚刚验证了你在html表单标签中有一个form_for,通过删除表单标签解决了问题:

<div class="container-fluid">
<form class="form-signin">
 <h2 class="form-signin-heading">Sign up</h2>
<%= form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
...
  <% end %>

  <h2 class="form-signin-heading">Sign up</h2>
        <%= form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
...
<% end %>

如果要将类更改为form_for帮助程序,可以尝试:html => {:class => "foo"}

祝你好运:)