どうすればこのようなことができますか?
if params[:property] == nil
@item.property = true
else
@item.property = false
1行で書くための適切な構文を常に忘れてください。
PHPでは、次のようになります。
@item.property=(params[:property]==nil)true:false
Railsでも同じですか?
どうすればこのようなことができますか?
if params[:property] == nil
@item.property = true
else
@item.property = false
1行で書くための適切な構文を常に忘れてください。
PHPでは、次のようになります。
@item.property=(params[:property]==nil)true:false
Railsでも同じですか?
三項演算子を使用します。
@item.property = params[:property] ? true : false
またはブール変換を強制します(「notnot」操作):
@item.property = !!params[:property]
注:ルビーでは、またはに評価されるオブジェクト以外のオブジェクトとして、真のブール値を使用しないのが一般的なイディオムです。false
nil
true
m_x の回答は完璧ですが、他の状況ではよりよく見えるかもしれない他の方法を知りたいと思うかもしれません:
if params[:property] == nil then @item.property = true else @item.property = false end
また
@item.property = if params[:property] == nil then true else false end