2010-11-16 50 views
0

我不斷收到這個錯誤,當我嘗試並查看我的註冊用戶頁面軌,傾斜視圖註冊用戶頁面

的Firefox已檢測到服務器 被重定向此 地址的請求的方式,將從來沒有 完整。

def register 
    #User registration form 
    @user = User.new(params[:user]) 
    if @user.save 
     flash[:notice] = "Account Created Successfully" 
     redirect_to(:action=>'menu') 
    else 
     flash[:notice] = "Please fill in all fields" 
     redirect_to(:action=>'register') 
    end 
    end 


<div class="user new"> 
    <h2>Create User</h2> 

    <%= form_for(:user, :url => {:action => 'register'}) do |f| %> 

    <table summary="User form fields"> 
     <tr> 
     <th>First Name</th> 
     <td><%= f.text_field(:first_name) %></td> 
     </tr> 
     <tr> 
     <tr> 
     <th>Last Name</th> 
     <td><%= f.text_field(:last_name) %></td> 
     </tr> 
     <tr> 
     <th>UserName</th> 
     <td><%= f.text_field(:user_name) %></td> 
     </tr> 
     <tr> 
     <th>Password</th> 
     <td><%= f.text_field(:password) %></td> 
     </tr> 
     <tr> 
     <tr> 
     <th>Email</th> 
     <td><%= f.text_field(:email) %></td> 
     </tr> 
     <tr> 
     <tr> 
     <th>Telephone</th> 
     <td><%= f.text_field(:telephone) %></td> 
     </tr> 
     <tr> 
     <td>&nbsp;</td> 
     <td><%= submit_tag("Register") %></td> 
     </tr> 
    </table> 


    <% end %> 
</div> 

回答

1

難道你不在你的視圖方法中重定向?

redirect_to(:action=>'register') 

你是否區分視圖方法和用戶提交表單時實際觸發的方法?防爆。對於RestfulAuthentication而言,該視圖稱爲「新建」,並且在提交表單後創建用戶的實際方法稱爲「創建」。

0

我認爲火狐消息意味着你有某種服務器重定向循環的事情。例如,如果您的應用程序控制器中有一個之前的過濾器,說明如果用戶未登錄,則將其發送到註冊用戶頁面。但是,在重定向到註冊頁面後,該用戶仍未登錄。然後,Rails將嘗試將它們重新導向到該頁面。從而形成一個循環。

1

您正在重定向您在else中的相同註冊表操作。嘗試render :action => '<action that contains the form>'

+0

另外,equals('<%=')在'form_for'中不需要。只要做'<%'。 – Todd 2010-11-17 00:27:59