用于在edit.gsp页面上载文件的grails和input标记

用于在edit.gsp页面上载文件的grails和input标记,grails,input,upload,gsp,Grails,Input,Upload,Gsp,在我的Grails项目中,我有一个域类,它允许我存储一些大文件。其结构如下: class PatientMedicalArchive { byte[] document1; byte[] document2; byte[] document3; String descriptionDocument1; String descriptionDocument2; String descriptionDocument3; static belongsTo = [patient:Patient,

在我的Grails项目中,我有一个域类,它允许我存储一些大文件。其结构如下:

class PatientMedicalArchive {

byte[] document1;
byte[] document2;
byte[] document3;

String descriptionDocument1;
String descriptionDocument2;
String descriptionDocument3;

static belongsTo = [patient:Patient, secUser:SecUser]

static constraints = {
    descriptionDocument1(maxSize: 255)
    descriptionDocument2(maxSize: 255)
    descriptionDocument3(maxSize: 255)
}

static mapping = {
    document1(sqlType: "longblob")
    document2(sqlType: "longblob")
    document3(sqlType: "longblob")
}
}

它允许我以正确的方式在数据库中存储大文件。问题是,当我需要编辑这个类的一个实例时,我需要用上传文件的名称填充字段。可能吗?我该怎么做?

这个问题很难理解。您是否已经有控制器逻辑能够将文件从存储在descriptionDocument字符串中的路径加载到文档字节数组中?在edit.gsp中,是否要指定文件名,然后将其加载到文档中?或者什么是所需的工作流?当我编辑此类的实例时,在表单中看不到文件名。我只有浏览按钮来选择文件,但我不知道创建实例时选择了哪个文件。因此,我需要知道是否有办法在edit.gsp中的表单中显示文件名(浏览按钮显然已经存在),以便用户在创建实例时知道选择了哪个文件。PatientMedicalArchive类中的document和descriptionDocument字符串之间没有引用。我更喜欢创建文档类或类似的类。什么将包含文档longblob、描述字符串等。然后,您可以引用PatientMedicalArchive类或此文档列表中的单独文档类实例。此外,CRUD gsp只能创建一次,或者您可以创建taglib,将文档类CRUD功能包含到相应的PatientMedicalArchive管理gsp中。我想这会更透明,更容易解决问题。