0

我正在使用 ActiveScaffold 创建管理 UI。

  • 我有两个模型:帖子和评论。
  • 一个帖子有很多评论,一个评论属于一个帖子。
  • 有一个 validates_presences_of :text 验证 Comment 模型。

问题是当我从管理 UI 创建一个新帖子而不在子表单中创建一个新评论时,ActiveScaffold 抱怨验证。如果我还创建了与之关联的评论,我可以创建帖子,这不是我想要的。

我可以从脚本/控制台手动创建一个新帖子。

是什么赋予了?

4

2 回答 2

0

也许您希望在每个帖子中创建至少一个评论的 ActiveScaffold 事物。我在 has-one 上遇到过这个问题……看起来 ActiveScaffold 在 has-many 情况下会足够聪明,但谁知道呢。

以下是我为 has-one 解决它的方法(无论如何都是我想要的 UX):

# if post has-one attachment
active_scaffold :post do |config|
  config.columns[:attachment].form_ui = :select
end

当然 :select 对评论没有意义,但是您可以查看类似的 UI 更改,告诉它不要尝试将表单内联(如果确实发生了这种情况)

于 2010-06-17T04:58:47.337 回答
0

您希望在创建/编辑帖子时默认防止(尝试)创建空白评论记录。幸运的是,AS 有一个 API::Column.show_blank_records 选项来控制这种行为:

active_scaffold :post do |config|
  config.columns[:comments].show_blank_records = false
end

这将要求用户在创建/编辑帖子时单击“添加新”按钮以创建新的评论记录,因此验证检查不会在空白记录上运行。

https://github.com/activescaffold/active_scaffold/wiki/API:-Column

于 2011-11-02T13:02:49.563 回答