2015-05-26 49 views
1

使用大型數據集。通常數據是好的,但是對於一些條目,缺少一個值。ruby​​ a = b || c如果b未定義

我希望我的種子:

player.nationality = dataset_row.player_nationality or 'US' if dataset_row.player_nationality is undefined 

而且,尋找一個班輪解決方案。謝謝!

+0

'a = b.present? ? b:c' – gabrielhilal

+0

@gabrielhilal'presence'對於這個構造來說更清潔。 –

回答

1

你可以做到這一點

player.nationality = dataset_row.player_nationality.presence || 'US' 

希望這有助於!

+2

但是,您可以使用'.presence'來解釋'nil'和空字符串。 –

+0

這是正確的,我使用'try'來避免nilClass錯誤,以防dataset_row變爲空白,但在這裏使用存在是有道理的,謝謝!我會編輯答案 – RSB

0

你可以做這樣的:

player.nationality = dataset_row.player_nationality.present? ? dataset_row.player_nationality : 'US' 
+0

'存在'對於這種用途來說更好。 –

相關問題