>> Reply.first
=> #< Reply id: 1, body: "line1\r\n\r\nline2\r\n" >
當但是當我做Rails的控制檯沒有顯示屬性稱爲
>> Reply.first.body
=> "line1"
它打破我的一些測試,他們正在尋找:
assert_difference 'Reply.where(:body => "line1\r\n\r\nline2").count' do
如何將我的測試是放心還有換行符?
>> Reply.first
=> #< Reply id: 1, body: "line1\r\n\r\nline2\r\n" >
當但是當我做Rails的控制檯沒有顯示屬性稱爲
>> Reply.first.body
=> "line1"
它打破我的一些測試,他們正在尋找:
assert_difference 'Reply.where(:body => "line1\r\n\r\nline2").count' do
如何將我的測試是放心還有換行符?
好像你有一個自定義的getter,是這樣的:
class Reply < ActiveRecord::Base
def body
"foo"
end
end
reply = Reply.new(body: "bar")
#=> #<Reply id:nil, body: "bar" created_at: nil, updated_at: nil>
reply.body
#=> "foo"
在這種情況下,您可以用獲取的原始屬性Model[:attribute_name]
:
reply[:body]
#=> "bar"
更改snytax一點點,當你有反斜槓的
assert_difference 'Reply.where("body = 'line1\r\n\r\nline2\r\n'").count' do
嗯,仍然不叫它.. – Trip
好像你有一個自定義的「吸氣」爲「身體」 – Stefan
是否使用'ActionMailer'或其他郵件寶石? – lurker
嘗試使用'Reply.first [:body]'獲取屬性' – Stefan