2013-02-14 28 views
0

我有下面的类:总是大写属性?

class Message 
    extend ActiveModel::Naming 
    include ActiveModel::Conversion 

    attr_accessor :name, :emails, :custom_content 

    def initialize(attrs = {}) 
    attrs.each do |k, v| 
     self.send "#{k}=", v 
    end 
    end 

    def persisted? 
    false 
    end 

    def email_list 
    self.emails.split(",").collect { |email| {:email => email.delete(" ")} } 
    end 
end 

我总是想利用属性的名称必须始终做到这一点时,我调用代码的属性,而不是。

回答

0

想通了:

class Message 
    extend ActiveModel::Naming 
    include ActiveModel::Conversion 

    attr_accessor :name, :emails, :custom_content 

    def initialize(attrs = {}) 
    attrs.each do |k, v| 
     self.send "#{k}=", v 
    end 
    end 

    def persisted? 
    false 
    end 

    #Fix is here 
    def name=(s) 
    @name = s.titleize 
    end 

    def email_list 
    self.emails.split(",").collect { |email| {:email => email.delete(" ")} } 
    end 
end