假设我有以下课程:
def create_dictionary(file):
newlist = []
dict = {}
file = open("hobbies_database.txt", "r")
hobbies = file.readlines()
for rows in hobbies:
rows1 = rows.split(":")
k = rows1[0] # nimi
v = (rows1[1]).rstrip("\n") # hobi
dict = {k: v}
for k, v in dict.items():
if v in dict[k]:
和 包装测试
package test
class Person {
String name
static hasMany = [stuff:Stuff]
static constraints = {
}
}
当我实现Person的视图时,我希望能够从以前创建的东西列表中进行选择。我该如何实现?我看到,当我使用脚手架时,Grails会生成一个下拉菜单,我可以在其中执行此操作,但是由于我自己设计了自己的视图,所以我想了解如何做到这一点。
谢谢。
答案 0 :(得分:1)
开始在此处查看有关select标签的文档可能是一件好事:https://gsp.grails.org/latest/ref/Tags/select.html
一个简单的示例来显示所有内容的列表,如下所示:
viewWillDisappear
这应该为您提供数据库中所有<g:select name="stuffSelect" from="${Stuff.list()}" optionKey="id" optionValue="stuff"/>
的下拉菜单,向用户显示String值,但在提交表单时提交DB ID。
答案 1 :(得分:0)
我很确定您可以在grails中使用generate-all命令,以查看脚手架代码的外观: http://docs.grails.org/3.1.1/ref/Command%20Line/generate-all.html
使用此命令应生成Controllers,views等,以便您可以查看支架代码的工作方式。不必担心能够返回生成的脚手架代码,只需删除generate-all创建的内容,grails就会像现在一样在运行时自动生成它。