2014-11-05 64 views
1

我想根據用戶名限制我網站的一部分。Rails IF --- IN語法

我想插入一個像下面的命令,但我得到一個語法錯誤。

if current_user.name in ("user1", "user2", "user3") 

我也試了下面。這在限制訪問指定的用戶名方面沒有效果,但我沒有得到任何錯誤。

if current_user.name == "user1" || "user2" || "user3" 

我該怎麼寫?

回答

2

試試這個:

if ["user1", "user2", "user3"].include? current_user.name 
3

如果它的軌道,然後.in?方法是可行的。

if current_user.name.in?(['user1', 'user2', 'user3']) 

對於香草紅寶石使用.include?

if %w[user1 user2 user3].include?(current_user.name) 
+2

應當'current_user.name.in?(['user1' , '用戶2', '用戶3'])'。注意:'[]'左右。但是,我更喜歡Ruby方式。 :) – Surya 2014-11-05 07:20:04

+0

夥計們,請試試這個滑軌控制檯:) – 2014-11-05 07:22:21

+0

我剛剛做到了。你試過了嗎? :) – Surya 2014-11-05 07:22:48