根据患者的性别打印出不同的消息

时间:2013-08-28 09:01:42

标签: ruby-on-rails ruby-on-rails-3

我想打印出患者所具有的性别差异信息。所以我用变量定义了一个文本:

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字符串中没有插入!怎么了?

1 个答案:

答案 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