2016-03-28 32 views
0

我有一個問題與紅寶石,在第一個文件中,client.rb,我有代碼#<ArgumentError:錯誤的參數數量(1 for 2)>在admin.rb:32:在'踢'

# Kicks a user from chat. Requires mod rights (or above) 
# @param [String] user 
def kick(user) 
    post(:msgType => :command, :command => :kick, :userToKick => user) 
    end 

,並在具有腳本錯誤代碼是

match /^kick/, :method => :kick 

# @param [User] user 
# @param [String] target 
def kick(user, target) 
    if user.is? :mod 
    @client.kick(target) 
    end 
end 

和香港專業教育學院上了標題 這是問題的錯誤?我已經嘗試了一切..

+0

什麼是目標?你想踢一個或兩個參數嗎? –

+0

它的意思是使用兩個參數,我的意思是,它的聊天,目標將被踢人,用戶自己,但...我不知道我在做什麼錯了或如何解決它 –

+0

兩個參數...目標是聊天中的人踢,用戶,以及執行命令的人。 –

回答

0

你想:match /^kick (.*)/, :method => :kick,而不是match /^kick/, :method => :kick。正則表達式傳遞匹配中的每個捕獲組作爲參數傳遞給指定的方法 - 沒有捕獲組,只傳遞user

See example here

相關問題