我对symfony相当陌生,目前正在用它做一个学校项目。
我必须制作一个功能,让我的用户可以上传 youtube 链接视频(如博客文章但带有视频)。所以我决定使用sonataMediaBundle来处理我的链接上传。
我已经安装了SonataAdminBundle和SonataUserBundle。它允许我已经设置了我的 CMS,但我发现只有管理员可以上传链接,我找不到如何允许我的用户上传链接视频而不让他们访问我在 SonataMediaBundle 中的所有 CMS。
好的,我正在推进我的项目,我只是简单地制作(没有奏鸣曲)。我在学说方面有一个问题,我无法检索我的数据库对象。
我遵循了symfony文档,所以我有了我的"showAction"。
public function showAction($id)
{
$video = $this->getDoctrine()
->getRepository('MediaBundle:Media')
->find($id);
if (!$video) {
throw $this->createNotFoundException(
'No video found for id '.$id
);
}
return $this->render("MediaBundle:LinkUpload:linkupload.html.twig", array(
'video' => $video,
));
}
然后在我的模板中,我正在做:
{% for item in video %}
{{ item.name }}
{% endfor %}
我也尝试在没有id参数的情况下使用findAll()而不是find(),但我总是收到一个错误,告诉我的变量"video"不存在。
对此有任何想法吗?
我还想知道:您如何正确上传YouTube链接视频?我正在考虑放置一个标签并要求用户每次都上传嵌入的youtube链接,但这样做并不复杂吗?(对于我的意思是用户)。
提前感谢您即将回答!
问题解决了!我在 showAction 方法之前返回了另一个方法,这意味着我的 showAction 方法没有返回任何内容!