问题标签 [activemodel]

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 投票
1 回答
478 浏览

ruby-on-rails-3 - 对象及其所有子对象的 ActiveModel 级联验证器

我有一个使用 ActiveModel 的类(虽然不是 ActiveRecord)。它表示从远程 Web 服务检索到的 JSON 对象。track 对象有一个 ReportLayout 对象数组,每个 ReportLayout 对象都有一个 slot 数组等。每个模型类都有一些简单的验证器,如 'validates_presence_of' 等。

如何启动级联验证,从跟踪对象开始,遍历每个级别的每个对象,验证它们,然后验证它们的子数组?堆栈有 4 层深,我们很快就会再增加两层。

谢谢你,拉杰

0 投票
2 回答
717 浏览

ruby-on-rails - Rails:从模型中获取具有唯一性验证的属性列表

只是想知道是否可以返回具有唯一性验证的所有属性的列表?例如,我有一个模型 Person - 我想返回“Person”中具有唯一性约束的属性列表。有任何想法吗?

0 投票
2 回答
183 浏览

ruby-on-rails - 重命名模型后我的迁移中断,我无法再运行 db:create

这就是发生的事情。我曾经有一个名为 Message 的模型,然后我想重命名它,所以我创建了一个迁移,将该表从 Message 重命名为 Thread。我后来进行了迁移,然后将其添加到该表中。

这很好用,它使用 db:migrate 来推进我们现有的数据库。现在我注意到,当我执行 db:create 来创建一个新的数据库时,它失败了,因为 rails 创建了消息,然后当它向消息添加一个字段时,我得到一个:

我认为问题在于我还将所有控制器和模型从消息重命名为线程,现在迁移时迁移时找不到模型?听起来对吗?

您如何在铁路世界中处理这个问题?谢谢

0 投票
3 回答
12563 浏览

ruby-on-rails - Rails,用脏了还是改了?用 after_commit 标记

我听说 Rails 有一个脏/更改标志。是否可以在 after_commit 回调中使用它?

在我的用户模型中,我有:

def push_changes我想知道名称字段是否更改的方法。那可能吗?

0 投票
0 回答
181 浏览

ruby-on-rails - Rails 3 模型:可以使用 :association_id => association.id 创建/更新,但不能使用 :association => 关联

这是我经常遇到的问题,我不太清楚为什么。任何建议表示赞赏:

假设我有 shop 和 book 的关系(book 属于 shop,shop 有很多书)

如果我运行以下代码:

我去拿

ActiveRecord::AssociationTypeMismatch: Shop(#70161677495100) 预期,得到字符串(#70161654862280)

但是,如果我运行

一切正常。

其他事情:

  • 我认为这不是 attr_accessible 问题。我已经尝试从两个模型中删除 attr_accessible 调用......没有变化
  • 我不认为这是协会的问题。从控制台,我可以创建 Book.new(:name => 'Naked People', :shop => shop) 没问题。目前它来自 rspec 控制器测试,事情不工作

有任何想法吗?我似乎经常遇到这种情况,但我很难过:解决方案

0 投票
3 回答
401 浏览

ruby-on-rails-3 - 一些验证通过后的自定义方法

好的。

1)我需要:link在我的模型中进行验证,并且只有在它不为空白(或为零)时才这样做。

2)如果:link不是空白并且标准验证通过 - 我需要运行我的自定义验证方法来检查 URL 可用性。

通过“标准”验证,我的意思是这样的:

实现这一点的正确方法是什么?

0 投票
2 回答
123 浏览

ruby-on-rails - ActiveRecord 关系:A has_many Bs AND A has_one B 同时可以吗?

我有一种情况,我不确定如何在 Rails 中处理:

活动has_many :photos和照片belongs_to :event

足够简单

但是,Event 还需要引用单个“关键”照片。

考虑添加:

事件has_one :key_photo, :foreign_key => "photo_id"

但是has_many上面给出的这个工作吗?如果是这样,如何处理已经说过的照片模型中的逆Photo belongs_to :event

我可以向 Photo 添加一个布尔列,该列仅适用于一行(“关键”照片),但这似乎是一种浪费……如果只是一个 1 位列。

0 投票
1 回答
63 浏览

ruby-on-rails - 为什么这些 Rails 验证不同?

我认为验证的默认值是:on => :save在 :create 和 :update 上都意味着什么?但是当我用第二个规格替换第一个时开始失败expected valid? to return false, got true

发生了什么?

0 投票
1 回答
228 浏览

ruby-on-rails - 我应该为这个简单的非数据库 Rails 应用程序使用 ActiveModel 吗?

我正在构建一个简单的两页 Rails 应用程序,其中用户:

  1. 在第一页输入信用卡详细信息,然后单击“下一步”。
  2. 在第二页输入帐单地址,然后单击“提交”。

我将有一个整体订单模型来验证输入的数据。

我不需要此应用程序的数据库,因为我将在页面之间的会话中存储数据。我应该将 ActiveModel 用于如此简单的事情吗?

0 投票
3 回答
8051 浏览

ruby-on-rails - 通过模块共享范围?

我想通过将共享范围移动到模块中来干燥几个模型,例如:

我还想创建测试模块的共享规范。不幸的是,当我尝试在我的模型中包含共享范围时,我得到:

有任何想法吗?谢谢!