有沒有更好的方法來編寫這段代碼。我認爲這看起來很糟糕。ruby on rails更好的語法
if !params[:project].blank?
redirect_to project_path(params[:project])
else
redirect_to root_url
end
有沒有更好的方法來編寫這段代碼。我認爲這看起來很糟糕。ruby on rails更好的語法
if !params[:project].blank?
redirect_to project_path(params[:project])
else
redirect_to root_url
end
您可以使用三元運算:
redirect_to params[:project].blank? ? root_url : project_path(params[:project])
讀好一點,海事組織。
if params[:project].blank?
redirect_to root_path
else
redirect_to project_path(params[:project])
end
。永遠不要像'else'那樣有雙重否定的情況:「如果項目參數*不是*空白的?」在這個版本中,它是「如果項目參數*是空白的?」 – tadman
redirect_to(
params[:project]
.tap{|p| break p.blank? ? root_url : project_path(p)}
)
一個非常可讀2襯墊IMO。
redirect_to project_path(params[:project]) unless params[:project].blank?
redirect_to root_url if params[:project].blank?
如果你想工作安全,不喜歡可讀性,這是要走的路。 – tadman
我不討厭這個。它是乾燥的,因爲你不重複重定向的東西。確切地說,是 –