问题标签 [model-associations]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
4115 浏览

ruby-on-rails - Rails 多态关联

我很难掌握 Rails 中的多态关联。我有两个模型,组和用户。

一个用户需要属于一个组,但一个组可以拥有_many 个用户和拥有_many 个组。我需要我的团队像一棵树,我认为祖先宝石应该有所帮助,但我还没有尝试过。

似乎我需要某种具有 user_id 和 group_id 的加入模型 Membership。然后我可以做一个 has_many :through 来将用户与组联系起来,但是我怎样才能让它也有很多组呢?Membership 会是多态模型吗?

谢谢!

安迪

0 投票
2 回答
5777 浏览

ruby-on-rails-3 - simple_form_for 错误:未定义的方法 - 关联模型

在我的 Rails 应用程序中,我有两个关联的模型,称为 Magazine 和 Article。

杂志

文章

路线

架构.rb

我正在尝试从文章的新页面创建与杂志关联的新文章。因此,我在杂志的展示页面中创建了一个链接,以将所选杂志传递到新文章的页面。

意见/杂志/show.html.erb

在文章的新页面中呈现的部分是:

意见/文章/_form.html.erb

而文章控制器的create方法是:

但是,当我尝试创建与该杂志关联的新文章时,我收到错误消息:

耙路线

我怎么解决这个问题?在这种情况下,传递给 simple_form_for 的正确参数是什么?

0 投票
1 回答
45 浏览

ruby-on-rails-3 - PHP 到 Rails - Rails 关联 - contact_to_groups 表

我有 CRUD 用于创建联系人和创建组。两者都嵌套在用户模型下。

我需要知道如何将联系人与组关联。

我希望在我的联系表单中有一些复选框(使用 formtastic),以便用户可以选择联系人所属的组。

在 php 中,我将创建一个名为 contacts_to_groups 的表,并且我将拥有 contact_id 和 group_id 列,然后当我保存联系人时,我将传递该数据并使用连接稍后将其取回。

谢谢!

联系创建表格

<% 结束 %>

0 投票
1 回答
387 浏览

ruby-on-rails - 一次性删除 Rails 模型及其关联?新手问题

我与设计用户对象有一个非常简单的关联,其中每个用户都有一个配置文件(具有更多特定于应用程序的东西......)我在创建用户对象和访问用户及其配置文件对象时没有问题。即@user.profile

但是,当我尝试删除配置文件对象时遇到问题 - 我假设当我删除 User 对象时,它也会删除每个关联的对象。我的用户对象中的关联就像accepts_nested_attributes_for :profile, :allow_destroy => true

has_one 和 belongs_to 关联在 User 和 Profile 对象上都设置了。也许问题出在设计代码中——我很难过。一个想法我在这里错过了什么。

0 投票
4 回答
8439 浏览

backbone.js - 从 Mustache 模板访问嵌套的主干模型属性

我有一个 Backbone 模型,它的属性是对另一个 Backbone 模型的引用。例如,Person 具有对 Address 对象的引用。

这些是扩展 Backbone 模型的类。那么,如果我构造一个像下面这样的对象......

我似乎无法弄清楚如何在我的 Mustache 模板中访问它。

显然行不通。当我查看 Firebug 的内部结构时,Address 是一个对象,但 City 是 Address 的属性对象中的一个属性。我找不到任何有关如何访问关联对象的这些属性的示例。

我很感激任何帮助!谢谢!

0 投票
1 回答
320 浏览

c# - 使用 LINQ Where 子句按关联表中的数据进行筛选

我有两个表,我在 ctx.dbml 文件中关联的文章和状态。

我想做的是过滤所有具有某种状态的文章。假设地说,类似于:

我遇到的问题是,在上面的 linq 查询中,第二行,Intellisense 从来没有给我article.Status.name。我在互联网上看到过这样的代码,所以我一定遗漏了一些东西。请帮忙。

0 投票
1 回答
562 浏览

ruby-on-rails - 如何在 Rails 3 的 build_association 调用中传递多个构造函数参数?

build_foo 调用中的第二个参数永远不会进入Foo#initialize(即args[1]is nil)。有什么建议可以让两个或多个参数传入Foo#initialize,同时保持*args唯一的参数初始化?

0 投票
1 回答
210 浏览

ruby-on-rails-3 - rails3 和使用关联的正确方法

我正在做我的第一个 rails(3) 应用程序。

协会没有意义。首先,即使是导轨指南也没有真正解释它们的作用,它们只是解释了如何使用它们。据我所知,协会做了两件事:

我正在尝试了解关联,以及如何正确使用它们。根据下面的示例,似乎关联已“损坏”,或者至少文档已损坏。

考虑我的应用程序的一个简单版本。一位老师修改单词表以供学习。

本次讨论有 3 个相关表格。为清楚起见,我只是简单地包含了 annotate(1) 工具对表的定义,并删除了不必要的字段/列。

词表管理表:

将单词映射到单词列表的表:

我们实际上并不关心单词本身。但我们确实关心最后一张表,即署名:

署名记录谁,使用什么工具,在哪里,何时等。署名主要用于解决发生的事情,以便我可以向用户解释他们应该做什么(和/或修复他们的错误)。

教师可以一次修改一个或多个单词列表管理记录(也称为单个署名)。换句话说,一次更改可能会更新多个单词列表。

对于 wordlist_mgmnt_records 关联将是:

但是署名的相应条目是什么?

《Beginning Rails 3》(Carneiro 等人)一书说:

[ 是的,我也为此查看了在线导轨指南。没有帮助。]

对于署名表/课程,我真的想说吗?

这真的没有意义。bylines 表基本上属于数据库中具有 bylines_id 的每个表。那么我真的会说属于他们所有人吗?那不会在所有其他表中设置外键吗?这反过来又会使更改比我真正想要的更昂贵(太多的 CPU 周期)。一些变化影响了很多表,其中一些非常大。我重视正常使用的速度,并且愿意等待在使用署名进行清理/修复时找到没有外键的署名。

这给我们带来了完整的循环。关联在 Rails 中的真正作用是什么,如何巧妙地使用它们?

仅仅因为你可以使用关联似乎不是正确的答案,但是你如何获得添加的连接语法呢?

0 投票
6 回答
7167 浏览

extjs - extjs 4 XTemplate 类关联

我正在测试 extjs 4,我偶然发现了一些东西,我似乎无法弄清楚。

我有简单的对象关联:快照 - hasMany -> 模型

现在,我正在尝试使用 XTemplate 在 View 组件中显示此关联,所以我的 XTemplate 看起来像这样:

我的 JSON 响应如下所示(仅显示“快照”节点):

由于 extjs 4 引入了模型的概念,我已经为 Snapshot 和 Model 创建了模型,并根据 API 文档创建了关联。

快照模型:

模型模型;P

这就是我的问题所在 - 当我使用此设置时,执行 XTemplate 时不会显示我的模型,但是如果我从快照模型中删除关联并添加另一个名为“模型”的字段,它就可以正常工作。

使用关联时正确显示模型列表的最佳做法是什么?我是否必须使用嵌套模板和自定义函数来执行此操作?

0 投票
4 回答
40626 浏览

extjs - ExtJS 4:具有关联和存储的模型

介绍

我正面临Ext.data.ModelExtJS 中的类的应用程序设计问题。我将在这里尝试将我的想法发展为一个非常常见的在线商店场景,因此您可以关注我。我真的很感激任何对我的想法和结论的评论!

楷模

假设您想将“每个客户都可以订购多种产品”这一事实映射到 ExtJS。从简单的话可以识别出这三个模型:CustomerOrderProduct。在Order这种情况下,连接Customers 和 Products。

协会

我发现 ExtJS 实际上允许您使用and类来指定这种(Customer)1-n(Order)1-n(Product)关系。但这就是人们想要的吗?您是否希望 a始终属于 a ?如果你想拥有一个与s 没有任何联系的s 列表怎么办?Ext.data.HasManyAssociationExt.data.BelongsToAssociationProductOrderProductOrder

专卖店

这是它获得更多 ExtJS 特定的地方。在 ExtJS 中,您必须Ext.data.Stores 来保存所有数据。对我来说,组织数据的一种自然方式是为Ext.data.Store我的每个模型设置一个:

  1. CustomerStore
  2. OrderStore
  3. ProductStore

考虑Ext.grid.Panel并排放置一个 3 s;每个商店一个。在一个网格中选择客户时,他的订单会自动显示在第二个网格中。在第二个网格中选择订单时,相关产品会出现在第三个网格中。

这听起来自然吗?如果没有,请发表评论!

把这一切放在一起

所以现在我们需要把三件事放在一起:

  1. 模型及其
  2. 关联 ( hasMany, belongsTo) 和
  3. 数据(Store秒)

是否可以仅从模型-模型关系的一侧定义关联?例如,我可以指定一个Order hasMany Products 但忽略那个 a Product belongsToanOrder吗?因为一个Product实际上可以属于多个Order。因此,我指定Product模型hasMany Order如下。

以下是 ExtJS 中的模型:

顾客

命令

产品

这里是商店:

客户商店

订单商店

产品商店

这是公司及其产品的示例(不是我的)http://superdit.com/2011/05/23/extjs-load-grid-from-another-grid/。它使用两个模型和两个商店,但没有定义关联。

先感谢您

-康拉德