【发布时间】:2012-11-22 09:31:18
【问题描述】:
有这样一个场景,我有一个模型Project,这个项目有一个Images 的画廊。所以:
Project HAS_MANY Image
Image BELONGS_TO Project -> Foreign key: project_id
在一个表单中,我希望能够将项目信息和多个图像一起保存。问题是我如何获得project_id,因为模型Project 有一个自动递增的ID,在保存模型之前我无法访问它。
我想到的一种方法是在开始时虚拟保存模型,然后在用户提交更新它的表单之后。不过好像很恶心!
以相同形式保存具有 HAS_MANY 和 BELONGS_TO 关系的模型的最佳做法是什么?
【问题讨论】:
-
dummy save the model in the begining没关系,如果用户不上传任何图片,设置虚拟模型的状态,你需要删除虚拟项目 -
当您有一些必填字段时,这是一个问题...我不想让用户先保存表单的某些部分,然后让他更新其余部分...
-
如果
$project->save()返回true,你能不保存图片吗?如果有图片上传失败,把它作为错误添加到项目模型中? -
我没明白你的意思...
标签: php database foreign-key-relationship yii