2011-11-11 13 views
5

मैं रेल 3.1 ऐप बना रहा हूं और एक साइनअप फॉर्म है जो ठीक काम कर रहा था, लेकिन मुझे लगता है कि इसे तोड़ने के लिए कुछ बदल गया है .. मैं ट्विटर बूटस्ट्रैप और twitter_bootstrap_form_for मणि का उपयोग कर रहा हूं । मैंने कुछ बदलाव किए जो फॉर्म फ़ील्ड के स्वरूपण से गड़बड़ कर चुके थे, लेकिन अधिक महत्वपूर्ण बात यह है कि जब मैं एक नया उपयोगकर्ता बनाने के लिए साइन अप फॉर्म जमा करता हूं, तो जानकारी यूआरएल में दिखाई दे रही है और इस तरह दिखती है:डाक अनुरोध के बजाय जीईटी अनुरोध जारी करने के लिए रेल फॉर्म

संपादित करें:

<div class="span7"> 
     <h3 class="center" id="more">Sign Up Now!</h3> 
     <%= twitter_bootstrap_form_for @user do |user| %> 
     <%= user.email_field :email, :placeholder => '[email protected]' %> 
     <%= user.password_field :password %> 
     <%= user.password_field :password_confirmation, 'Confirm Password' %> 
      <%= user.actions do %> 
     <%= user.submit 'Sign Up' %> 
     <% end %> 
     <% end %> 
    </div> 

यहाँ UsersController के लिए कोड है::

01,235,164 यह नवीनतम और Firefox क्रोम के संस्करणों में हो रहा है

http://localhost:3000/?utf8=%E2%9C%93&authenticity_token=UaKG5Y8fuPul2Klx7e2LtdPLTRepBxDM3Zdy8S%2F52W4%3D&user%5Bemail%5D=kevinc%40example.com&user%5Bpassword%5D=testing&user%5Bpassword_confirmation%5D=testing&commit=Sign+Up

यहाँ फार्म के लिए कोड है

class UsersController < ApplicationController 
     def new 
     @user = User.new 
     end 

     def create 
     @user = User.new(params[:user]) 
     if @user.save 
     redirect_to about_path, :notice => "Signed up!" 
     else 
     render 'new' 
     end 
     end 
    end 

सुनिश्चित नहीं है कि आपको और आवश्यकता है, लेकिन यदि ऐसा है तो मुझे बताएं! धन्यवाद!

संपादित करें: पोस्ट और भी form_for

 <%= form_for(@user, :method => :post) do |f| %> 
     <div class="field"> 
      <%= f.label :email %> 
      <%= f.email_field :email %> 
      </div>   
      <div class="field"> 
      <%= f.label :password %> 
      <%= f.password_field :password %> 
      </div> 
      <div class="field"> 
      <%= f.label :password_confirmation %> 
      <%= f.password_field :password_confirmation %> 
      </div> 
      <div class="actions"><%= f.submit "Sign Up" %></div> 
     <% end %> 

यह मैं के रूप में ऊपर एक ही समस्या देता है एक सादे का उपयोग कर: डीबगिंग के लिए मैं निर्दिष्ट करने की कोशिश की।

जोड़ना routes.rb:

Auth31::Application.routes.draw do 

    get "home"  => "pages#home" 
    get "about" => "pages#about" 
    get "contact" => "pages#contact" 
    get "help"  => "pages#help" 
    get "login" => "sessions#new",  :as => "login" 
    get "logout" => "sessions#destroy", :as => "logout" 
    get "signup" => "users#new",  :as => "signup" 
    root :to  => "pages#home" 

    resources :pages 
    resources :users 
    resources :sessions 
    resources :password_resets 
    end 

उत्तर

3

समस्या थी कि मैं निर्दिष्ट करने गया था HTML फॉर्म टैग जब Rails form_for स्वयं उत्पन्न करता है। एक वर्ग में एक वर्ग जोड़ने के लिए नीचे देखें:

<%= form_for(@user, :html => { :class => "form-stacked"}) do |f| %> 

यह ठीक काम करता है। मुझे अभी भी यकीन नहीं है कि 2 टैग क्यों एक जीईटी अनुरोध उत्पन्न करेंगे। कोई लाभ नहीं हुआ पोस्ट:

0

ऐसा लगता है आपके लिए तरह GET अनुरोध भेज रहा है, बल्कि एक पोस्ट अनुरोध है कि। मुझे यकीन है कि क्यों यह हो रहा है नहीं कर रहा हूँ (? आप डीबगिंग उद्देश्यों के लिए सादे form_for उपयोग करने की कोशिश की है), लेकिन आप इसे स्पष्ट रूप से विधि की स्थापना मेरी ठीक करने के लिए सक्षम होना चाहिए:

<%= twitter_bootstrap_form_for(@user, :method => :post) do |user| %> 
+0

मैं निर्दिष्ट करने की कोशिश की। और मैंने एक सादे form_for का उपयोग करने की कोशिश की। यदि आप एक नज़र डालने पर ध्यान नहीं देते हैं तो उपरोक्त कोड को संपादन के रूप में जोड़ना। अभी भी एक ही समस्या है .. – kcurtin

+0

आप सही हैं, मेरे टाइपो क्षमा करें। क्या आप अपना 'मार्ग.आरबी' पोस्ट कर सकते हैं? –

+0

कोई समस्या नहीं, मैंने एक संपादन किया क्योंकि मुझे एहसास हुआ कि मुझे थोड़ा सा साँस लग रहा है :) – kcurtin

संबंधित मुद्दे