如何实现view里面显示一个表格且可以编辑提交 [ 2.0 版本 ]
各位大侠,我是刚学php和yii的,现在碰到一个问题如下:
我有一个产品的model, 对应产品数据表,但是产品有可能会是一个套装, 所以关联了另一个表 (把所有属于一个套装的产品记录在这表里), 组成套装的本身也是一个产品:
product_id, qty
但是通过gii 生成的model和view无法体现这种关系。
model/product - 只有对应产品表的字段。
view/product/create -只有对应产品表的字段用来添加.
请问我该如何在product里增加对套装列表的引用?
在新建产品页面 , 我尝试用html + script 的方式添了一个表格到product的表单里,这样就可以添加套装包含 的产品, 这种方式对么? 有没有更好的办法? 在controller里,我怎么去得到这个表的数据 (然后才能保存到数据库里)? 怎么把数据显示到这个table里去?
....
<?= $form->field($model, 'desc')->textInput() ?>
<div id="suiteData">
<table id="suitTable" class="table">
<thead>
<tr>
<th>名称</th>
<th>数量</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<tr></tr>
</tbody>
</table>
<br />
<input type="button" id="but" value="添加">
</div>
<?= $form->field($model, 'pic')->fileInput() ?>
.....
谢谢!
共 2 个回答
-
dingjj2010 回答于 2015-11-04 10:17 举报
首先解决你的多表字段问题,可以新建一个form继承至model,里面放需要的字段名称。
至于view要可编辑的表格,你就在td里面放input就可以了。
提交的话,可以在提交前通过js,把表单的数据组合成数组,或者json格式进行提交。
甚至你可以在一开始就维护一个数组,修改input的同时修改数组内容。家有泰迪 觉得很赞 -
你的意思是表单提交对应的是多个model?
可以看下 官方文档的这个小节 http://www.yiiframework.com/doc-2.0/guide-input-multiple-models.html
onlinb41
注册时间:2015-11-03
最后登录:2015-11-07
在线时长:0小时14分
最后登录:2015-11-07
在线时长:0小时14分
- 粉丝0
- 金钱0
- 威望0
- 积分0