mardi 8 septembre 2015

rails - combining two columns in the db into one in signup form

I have two columns in the db :first_name and :last_name. In the signup form I want to have only one field :full_name.

Name model (doesn't have a table in the db):

class Name
attr_accessor :first_name, :last_name

def initialize(first_name, last_name)
    @first_name, @last_name = first_name, last_name
end
def to_s
    "#@first_name #@last_name"
end 
end

Customer model:

class Customer < ActiveRecord::Base
 def name
 @name ||= Name.new(first_name, last_name)

end

def name=(name)
 self[:first_name] = name.first_name
 self[:last_name] = name.last_name
 @name = name
end     

end

view:

= f.input :name, label: false, required: true, autofocus: true,      placeholder: "Full Name"

Aucun commentaire:

Enregistrer un commentaire