我有一个相对简单的 Blog Post 对象,命名为Blog
每个新创建(或更新)的帖子都有一些标签(以 json 数组的形式)分配给它,这些标签需要循环并插入到blog_link_tags
连接表中,因此每个博客帖子可以有多个标签分配给它。
目前我的代码看起来像这样,但这似乎是错误的。
public function insertAction(Request $request)
{
$blogPost
->setTitle( $request->request->get('post_title', '') )
->setBody( $request->request->get('post_body', '') );
$em = $this->getDoctrine()->getManager();
$em->persist($blogPost);
$tags = new BlogLinkTag();
$tags->setBlogId( */get blog post id* );
$tags->setTagId(1);
$em->persist($tags);
$em->flush();
}
有没有更好的方法来执行此操作?例如,这样的事情更有意义:
$blogPost
->setTitle( $request->request->get('post_title', '') )
->setBody( $request->request->get('post_body', '') )
->setTags( json_decode($request->request->get('post_tags')) );