【问题标题】:Grails Controller won't persist objectGrails 控制器不会持久化对象
【发布时间】:2014-05-17 18:06:50
【问题描述】:

控制器持久化的对象是否需要与控制器同名?就像在 xobject 和 xobjectController 中一样?我正在尝试保留一个没有为其创建匹配名称控制器的域对象。我正在尝试从另一个控制器完成它,但它没有保存它。如果我尝试从这个控制器中保存一个与控制器具有相同类名的对象,那么它就可以工作。这是否意味着每个域都必须有一个匹配的控制器,因此一个控制器不能处理多个域对象?我正在使用 Mongdb。

【问题讨论】:

    标签: mongodb grails


    【解决方案1】:

    您是否根据表单输入初始化用户变量?如果是这样,请仔细检查表单和构造函数之间的参数名称是否匹配。

    【讨论】:

      【解决方案2】:

      完全不,控制器和域对象不必相同,如果您也可以共享代码会有所帮助。

      您在保存对象时是否遇到任何错误?如果出现验证错误,您可以通过 failOnError 强制使您的事务失败。

      xobject.save(failOnError: true)
      

      【讨论】:

      • 我没有收到任何错误。这就是令人困惑的地方。为什么控制器会保存一个与它自己具有相同域名的对象,而不是另一个具有不同名称的域对象。这对我来说很奇怪。请参阅下面我的“答案”中的代码。
      猜你喜欢
      • 1970-01-01
      • 2011-10-14
      • 2017-11-27
      • 1970-01-01
      • 2017-04-03
      • 2011-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多