我被困在如何调试它。目前的行为是,当一个寄存器,它基本上创建了一个模型用户的新记录时,它应该创建记录。如何在rails中调试这个表单来创建一个新用户?
它只是回到相同的用户/新视图而没有创建它。我在控制台中没有看到任何有趣或有用的东西。
我想使用调试器,但正如我所说的,没有什么用处。
这里就是问题可能在于,在所述控制器和在新视图:
users_controller.rb
6 def new
7 @user = User.new
8 end
9
10 def create
11 @user = User.new(params[:user])
12 debugger
13
14 @user.save do |result|
15 debugger
16 if result
17 flash[:notice] = "Account registered!"
18 redirect_back_or_default account_url
19 else
20 render :action => :new
21 end
22
23 end
24 end
这里是视图/新:
1 <h1>Register</h1>
2
3 <% form_for @user, :url => new_user_path do |f| %>
4 <%= f.error_messages %>
5 <%= render :partial => "form", :object => f %>
6 <%= f.submit "Register" %>
7 <% end %>
问题:什么是可能的失败领域,以及如何最好地使用调试器来解决问题?
顺便说一下:我在Rails 2.3.8上使用AuthLogic。
你确实已经安装了ruby debug吗?你是否启用了启用调试的服务器? rails服务器--debugger – 2011-03-10 02:56:46
窗体应该指向创建或更新,而不是新的 – DGM 2011-03-10 03:19:01