ruby-on-rails - Rails 通过组合字段自定义连接
问题描述
我有 2 个模型,PotentialClient
并且Client
. PotentialClient
并且Client
有一个非唯一字段:mindbody_id
,Client
也有一个唯一字段 ,:unique_mb
即等于"#{location_id}{mindbody_id}"
,使该字段唯一。 :location_id
也存在于 上PotentialClient
,但:unique_mb
不是。
有没有办法加入PotentialClient
和Client
通过,:unique_mb
因为它存在Client
并且PotentialClient
具有生成该字段所需的所有信息?
解决方案
我很确定你的:unique_mb
领域不能保证是独一无二的。你最好在两个不同的领域加入他们,而不是试图制造你自己独特的两者组合。
由于您没有给出打算如何使用它的示例,因此我假设当您说要加入他们时,您实际上只是在寻找PotentialClient
给定的匹配记录Client
?
在这种情况下,你可以这样做:
@client = Client.find(params[:id]) # or however you're finding your Client record
@potential_clients = PotentialClient.where(location: @client.location, mindbody: @client.mindbody)
如果这不是您要查找的内容,那么提供更详细的示例来说明您正在尝试实现的目标、显示您迄今为止尝试过的代码以及您收到的任何错误对您很有帮助。
推荐阅读
- python - 使用 TweePy 通过 DM 分享推文
- c - 如何在 C 中将一棵树变成一串括号表示?
- python - 如何在 for 循环中每次更改变量名?
- excel - 如何声明一个 GroupBox?
- python - 从数据库中获取评论时重复元素
- notepad++ - 如何在 Notepad++ 的代码块中过滤重复出现的数字?
- javascript - 访问对象属性
- python - 如何从 GUI 调用 Turtle 窗口
- database - 来自 Windows 上的外部客户端的远程 PostgreSQL 连接
- java - 如何使用 Eclipse 删除 JButton 中图标的边框?