2014-09-27 7 views
7


रेल पर रूबी सीखना शुरू करें।
फॉर्म में वर्चुअल फ़ील्ड को कैसे जोड़ना है?
फॉर्म जमा करने के बाद, इन फ़ील्ड को एक डेटाबेस डेटाबेस में संयुक्त और संग्रहीत किया जाना चाहिए।फॉर्म में वर्चुअल फ़ील्ड्स

उत्तर

5

पहले हमेशा की तरह अपने रूप की स्थापना:

<%= form_for @user do |f| %> 
<ol> 
    <li> 
    <%= f.label :first_name, 'First Name' %> 
    <%= f.text_field :first_name %> 
    </li> 
    <li> 
    <%= f.label :last_name, 'Last Name' %> 
    <%= f.text_field :last_name %> 
    </li> 
    <%= f.submit %> 
</ol> 
<% end %> 

इस उदाहरण में हम first_name और last_name के लिए एक आभासी विशेषता जोड़ रहे हैं।

user.rb

class User < ActiveRecord::Base 
    attr_accessor :first_name 
    attr_accessor :last_name 
end 

अपने नए आभासी विशेषता के लिए एक attr_accessor जोड़ें।

users_controller.rb

def create 
    @user = User.new(:full_name => {'firstname' => user_params[:first_name], 'lastname' => user_params[:last_name]}) 
    ... 
end 

private 

def user_params 
    params.require(:user).permit(:first_name, :last_name) 
end 

अंत में, आभासी विशेषता पैरामीटर (रेल संभालने 4) की अनुमति के लिए एक विधि जोड़ें।

कई इनपुट सहेजने और उन्हें डीबी में एक ही फ़ील्ड में सहेजने के लिए आप वर्चुअल फ़ील्ड को नियंत्रक में जोड़ सकते हैं और फिर उन्हें डीबी में सहेज सकते हैं, जैसा ऊपर create विधि में दिखाया गया है।

+1

ठीक है, बहुत, टॉम। धन्यवाद! –

+1

कोई समस्या नहीं, अगर यह मदद मिली तो कृपया ऊपर उठाएं :) –

+1

बेशक, टॉम। –

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