3
我有一个表格映射如以下:播放框架如何重用和扩展形式的映射
val myBaseMapping = mapping(
"email" -> email,
"password" -> text.verifying("Please provide a password", !_.isEmpty)
)(BaseModel.apply)(BaseModel.unapply)
这代表FormA
。我有另一种形式,FormB
,这是相同的,但增加了几个字段。这是它的映射会是什么样子:
val myExtendedMapping = mapping(
"email" -> email,
"password" -> text.verifying("Please provide a password", !_.isEmpty)
"name" -> text,
"website" -> text
)(ChildModel.apply)(ChildModel.unapply)
ChildModel
扩展BaseModel
:它增加了2个新的领域,name
和website
。
我试图以这样的方式编码myExtendedMapping
,我不必为共享字段(电子邮件和密码)复制绑定定义。
我不知道什么是Scala语法。我不知道如何“扩展”给定的映射并添加绑定。另外,由于行为上的差异,我不想添加临时验证。这是可能的还是我只需要复制代码?
每个绑定到什么? –
我不确定这是否回答你的问题,但是要使用映射,我需要:Form(myMapping),然后使用它从HTTP请求进行绑定。 – oym
我的意思是应该'FormB'还绑定到'MyModel',还是别的?如果是这样,那会是什么样子? –