Ruby on rails 参数数目错误(1为0)Rails错误

Ruby on rails 参数数目错误(1为0)Rails错误,ruby-on-rails,Ruby On Rails,我在下面的方法中有一个错误 def mymethod cat = Cat.find_by_cat_id_and_animal_id_and_name(catid, haustierid, cat_name) if cat.name.nil? if cat.name == "beauty" #doworkhere end end end 问题是,我有一个cat表,有一列名称。在猫的名字里面,有不同的行包含名字(“

我在下面的方法中有一个错误

 def mymethod
    cat = Cat.find_by_cat_id_and_animal_id_and_name(catid, haustierid, cat_name)
    if cat.name.nil?
       if cat.name == "beauty"
           #doworkhere
        end
      end
 end
问题是,我有一个cat表,有一列名称。在猫的名字里面,有不同的行包含名字(“美丽”,“丑陋”,等等)。我试着在cat表格中循环,进入行,检查是否有“美女”,然后做一些事情。然而,它返回到我输入了错误的参数。我无法理解错误的参数,这是在“cat name列”中循环的正确方式吗
谢谢您的回答。

我认为您的查找查询应该是:

cat = Cat.find_by_id_and_animal_id_and_name(catid, haustierid, cat_name)
而不是

cat = Cat.find_by_cat_id_and_animal_id_and_name(catid, haustierid, cat_name)

谢谢……

我认为您的查找查询应该是:

cat = Cat.find_by_id_and_animal_id_and_name(catid, haustierid, cat_name)
而不是

cat = Cat.find_by_cat_id_and_animal_id_and_name(catid, haustierid, cat_name)

谢谢……

您的代码中有几个错误,但没有人能解释您收到的错误消息。 如果,您可能需要在
中发布代码

同时,让我展示几个问题

cat = Cat.find_by_cat_id_and_animal_id_and_name(catid, haustierid, cat_name)
你可能是说

cat = Cat.find_by_id_and_animal_id_and_name(catid, haustierid, cat_name)
此外,您可能希望使用作用域(如果使用Rails2,则使用命名作用域)

如果
,我将永远不会输入第二个
。名称不能同时为nil和字符串。
还有,假设你想说!无你可以用更简洁的方式写它

if !cat.name.nil? && cat.name == "beauty"
    #doworkhere
或者干脆

if cat.name == "beauty"
    #doworkhere

代码中有几个错误,但没有人能解释您收到的错误消息。 如果
,您可能需要在
中发布代码

同时,让我展示几个问题

cat = Cat.find_by_cat_id_and_animal_id_and_name(catid, haustierid, cat_name)
你可能是说

cat = Cat.find_by_id_and_animal_id_and_name(catid, haustierid, cat_name)
此外,您可能希望使用作用域(如果使用Rails2,则使用命名作用域)

如果
,我将永远不会输入第二个
。名称不能同时为nil和字符串。
还有,假设你想说!无你可以用更简洁的方式写它

if !cat.name.nil? && cat.name == "beauty"
    #doworkhere
或者干脆

if cat.name == "beauty"
    #doworkhere
你写了“if cat.name.nil?”,但在你还写了cat.name=='beauty'之后。“如果cat.name=='beauty'”。我认为这个if语句永远不会运行,因为cat.name是nil。您写了“if cat.name.nil?”,但在您也写了cat.name==‘beauty’之后。“如果cat.name=='beauty'”。我认为这个if语句永远不会运行,因为cat.name是nil。