gpt4 book ai didi

ruby-on-rails - Rails 3 - 按名称而不是 id 查找

转载 作者:行者123 更新时间:2023-12-03 00:47:16 25 4
gpt4 key购买 nike

我正在尝试学习 RoR,构建我的第一个应用程序,一个基本的库存应用程序。我尝试四处搜索,但找不到正确的语法,所以我想我应该问一下。

这是我的设置:

型号

class Item < ActiveRecord::Base
belongs_to :supplier

class Supplier < ActiveRecord::Base
has_many :items

元素 Controller

@items = Item.find_all_by_supplier_id '1'

这将返回我想要的数据,但我希望将供应商名称输入到 Controller 中,这样如果 ID 不匹配,它仍然可以正常工作。

希望这是足够的信息,谢谢!

最佳答案

您可以反转您的方法位并尝试:

@items = Supplier.find_by_name('THE NAME').items

Rails 创建动态 find_by_* 和 find_all_by_* 方法进行搜索。我建议您让rails 使用您在上面的代码片段中设置的关联来完成此操作,而不是通过supplier_id 检索项目。在内部,这仍然使用supplier_id,但rails正在代替你处理这个过程。

相反的情况也是可能的,所以如果您有一个商品并且想要供应商,您可以这样做:

Item.find(1).supplier

关于ruby-on-rails - Rails 3 - 按名称而不是 id 查找,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5572266/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com