在我的symfony项目中,我第一次尝试使用Sonata Admin Bundle,但我有一个问题。假设我有一个实体Comment
。现在,用户应该能够在前端中创建和编辑注释,并且我希望管理员能够在后端中进行相同的操作。如docs of sonata admin bundle中所述,我为我的评论实体设置了一个管理类。
在前端控制器中使用此管理服务来创建/更新/删除这样的注释是否明智:
public function createCommentAction(Request $request) {
...
if(true === $form->isValid()) {
$commentAdmin = $this->container->get('admin.comment');
$commentAdmin->create($comment);
// Redirect somewhere
...
}
}
如果不是,是否不将将注释保留到数据库的方法分开会导致大量代码重复?有更好的解决方案吗?我正在尝试从前端和后端做基本上相同的事情。