我想打印出患者所具有的性别差异信息。所以我用变量定义了一个文本:
p10 = "Bitte Kodierung überprüfen: Kode gilt überwiegend nur für #{@gender} Patienten."
我的代码是这样写的:
if patient.geschlecht == '2' && code.geschlecht == 'm' && code.geschlecht_fehler == 'm'
@gender = 'männliche'
@arr << p10
end
if patient.geschlecht == '1' && code.geschlecht == 'w' && code.geschlecht_fehler == 'k'
@gender = 'weibliche'
@arr << p10
end
但不知怎的,这不会起作用,在我看来我得到了错误:
undefined local variable or method `gender' for #<DiagnoseController:0x50197e0>
那我错了什么?或者你将如何打印出不同的消息?
UPDATE_的 _ __ _ __ _ __ _ __ _ __ _ __ _ _ 更新的 _ __ _ __ _ __ _ __ _ __ _ __
现在我没有错误,但不知怎的,@ gender在p10字符串中没有插入!怎么了?
答案 0 :(得分:0)
问题在于,您当时首先定义了p10
@gender
din。所以你可以做到这一点,或者在定义了性别之后将p10
声明放入if中。或者只在if {'1}}中添加diff行,就像这样。
arr
总之,在为其分配值之前,您无法使用flag = false
if patient.geschlecht == '2' && code.geschlecht == 'm' && code.geschlecht_fehler == 'm'
@gender = 'männliche'
flag = true
end
if patient.geschlecht == '1' && code.geschlecht == 'w' && code.geschlecht_fehler == 'k'
@gender = 'weibliche'
flag = true
end
@arr << "Bitte Kodierung überprüfen: Kode gilt überwiegend nur für #{@gender} Patienten." if flag
。