我学习Ruby并不能为它的生命找出这样做:具有相同名称的功能是做什么的?
def topic_list
topics.map(&:name).join(",")
end
def topic_list=(names)
if names.present?
topics = names.split(",")
self.topics = topics.map do |n|
unless topic = Topic.find_by(slug: n)
topic = Topic.create!(name: n)
end
topic
end
end
end
为什么两个函数具有相同的名称?第一个函数调用第二个函数吗?
仔细观察:它们*不具有相同的名称。一个名为'topic_list',另一个名为'topic_list ='。 –