【问题标题】:Rails custom join by combining fieldsRails 通过组合字段自定义连接
【发布时间】:2020-11-12 20:41:59
【问题描述】:

我有 2 个模型,PotentialClient 和 Client。 PotentialClient 和Client 有一个非唯一字段:mindbody_id,而Client 也有一个唯一字段:unique_mb,它等于"#{location_id}{mindbody_id}",使该字段唯一。 :location_id 也存在于 PotentialClient 上,但 :unique_mb 不存在。

有没有办法通过:unique_mb 加入PotentialClient 和Client,因为它存在于Client 和PotentialClient 上具有生成字段所需的所有信息?

【问题讨论】:

  • 你确定{location_id}{mindbody_id} 是独一无二的吗?如果你有位置 11 和心身 2,然后是位置 1 和心身 12?

标签: ruby-on-rails join


【解决方案1】:

我很确定您的 :unique_mb 字段不能保证是唯一的。你最好只在两个不同的领域加入他们,而不是试图制造你自己独特的两者组合。

由于您没有给出打算如何使用它的示例,我假设当您说要加入他们时,您实际上只是在为给定的@寻找匹配的 PotentialClient 记录987654323@?

在这种情况下,您可以这样做:

@client = Client.find(params[:id]) # or however you're finding your Client record
@potential_clients = PotentialClient.where(location: @client.location, mindbody: @client.mindbody)

如果这不是您要查找的内容,最好提供一个更详细的示例来说明您想要实现的目标,展示您迄今为止尝试过的代码以及您遇到的任何错误”收到了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多