【问题标题】:Rails controler not passing arguments to modelRails 控制器没有将参数传递给模型
【发布时间】:2017-06-17 04:38:24
【问题描述】:

可能是一个新手问题,但它让我陷入困境。

我的 rails 程序应该采用起点城市、目的地城市,然后在数据库中搜索与搜索词匹配的行程。不幸的是,我不确定为什么我的控制器没有将参数传递给我在模型中调用的方法。

在我的控制器中,我有:

@OneLeg = Trip.OneLeg(params[:origin], params[:destination])

在我的模型中我有:

def self.OneLeg(sorigin, sdestination)
  Trip.where(["origin = ? and destination = ?", sorigin, sdestination])
end

当我尝试查看网页时出现错误:

参数数量错误(给定 0,预期 2)

不完全确定导致问题的原因。

非常感谢您在此方面的帮助!

【问题讨论】:

  • 你在哪一行得到这个错误?分享您的表单,可能您的参数没有带有此类键的值..您在日志中看到了什么?
  • 参数为零,这就是为什么

标签: ruby-on-rails model-view-controller


【解决方案1】:

可能是一个严重的参数问题。尝试发布您的 Contollers 私有方法(tripParams 等),我们可以提供更多帮助。

您很可能需要允许参数并通过该参数方法访问它们。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-24
    • 2011-02-18
    • 2020-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多