我有两个类(class):书籍和作者;一个作者可以有很多本书,而一本书属于一个作者。
我需要创建一个表格来添加一本书。当按下创建按钮时,我想创建书籍记录和作者记录。目前,默认脚手架呈现一个列表框以从现有作者中进行选择,因此我需要将其替换为文本框。
这是我的类(class)的简化版本:
class Book {
static belongsTo = [author:Author]
String title
}
class Author {
static hasMany = [books:Book]
String name
}
我在网上找到的所有教程都只包含作者表单的示例,也创建了书籍,而不是相反。如何做到这一点?
谢谢。
最佳答案
您可以创建一个包含 2 个文本框的表单,一个用于书名,一个用于书名。我会假设作者的名字是唯一的, Controller 的代码将是这样的:
def saveBookForm(String title, String name) {
Author author = Author.findByName(name)
if (author == null) {
author = new Author(name:name).save()
}
new Book(title:title, author:author).save()
}
关于forms - Grails如何为所有者创建所有者的一对多关系创建表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21148911/