Ser*_*off 0 ruby ruby-on-rails
我可以这样做吗?
self.send(:twitter_url) = result
Run Code Online (Sandbox Code Playgroud)
它对我来说不是这样的.
self.send(:twitter_url, result) # this doesn't work either
Run Code Online (Sandbox Code Playgroud)
Model.twitter_url 是一个属性(字符串列)
我需要这个来进行重构.
好的,还有一件事:
argument = :twitter_url
self.send(argument=, result)
Run Code Online (Sandbox Code Playgroud)
我该怎么办?
你应该使用twitter_url="setter"方法,所以这应该工作:
send(:twitter_url=, result)
Run Code Online (Sandbox Code Playgroud)
关于您的编辑,您至少可以做两件事:
第一种方法:
send("#{argument}=", result)
Run Code Online (Sandbox Code Playgroud)
第二种方法,使用write_attribute:
write_attribute(argument, result)
Run Code Online (Sandbox Code Playgroud)