我对symfony相当陌生,目前我正在用它做一个学校项目。SonataMediaBundle:允许用户上传链接
我必须做一个功能,我的用户可以上传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()方法,但我总是得到一个错误,告诉我的变量“视频”不存在。
对此有何想法?
我也想知道:您如何正确上传YouTube视频链接?我正在考虑放置一个标签,并要求用户每次都上传嵌入的YouTube链接,但这样做并不复杂吗? (对于我的意思是用户)。
在此先感谢您的即将到来的答案!
你不应该需要一个包来做到这一点。它是一个简单的例子,创建一个实体来保存数据,然后将这些数据渲染成模板。走开,如果你陷入困境,让我们看看你的尝试。 – DevDonkey