2

我已经安装了 Django-Photologue,我可以在我的 Django 管理站点中上传文件和创建画廊。我一直在下面的文档中搜索有关如何创建照片上传表单的示例,以便我的用户可以在我的网站上创建图库,但找不到一个简单的示例来帮助我入门。我还设置了他们的示例应用程序,但它在如何通过从视图/模板中发布来上传和创建画廊方面并不是很有帮助。

文档: https ://django-photologue.readthedocs.org/en/2.7/ https://code.google.com/p/django-photologue/

有人可以提供一个简单的例子来说明我如何创建一个上传表单来提交照片和创建一个与 Django-Photologue 一起使用的画廊(不仅仅是使用管理站点)吗?

谢谢 -

4

2 回答 2

2

这很简单,Photologue在其模型中包含所有相关逻辑。

例如要设置照片上传,您可以使用 CBV:

网址.py

from django.views.generic import CreateView
from photologue.models import Photo


urlpatterns = patterns('',
    url(r'^photologue/photo/add/$', CreateView.as_view(model=Photo),
        name='add-photo'),
    (r'^photologue/', include('photologue.urls')),
    ...

在您的模板中,请记住设置enctype属性以处理文件。

模板/photologue/photo_form.html

<form action="" method="post" accept-charset="utf-8" enctype="multipart/form-data">{% csrf_token %}
    {{ form.as_p }}
    <input type="submit" name="submit" value="Submit">
</form>

这基本上就是你所需要的......如你所见,我们不使用任何自定义逻辑,所有内容都封装在Photo模型中,其余的由 CBV 完成。

这同样适用于 Gallery,只需将模型替换为Gallery即可。显然,如果您需要一些自定义,您也可以这样做,但这超出了范围,因为您没有指定需要处理的用例。

于 2013-12-05T21:49:41.953 回答
0

上面的答案中缺少的一件事是您必须在 CreateView.as_view 中设置 success_url。例如: CreateView.as_view(model=Photo, success_url='/')

否则,您将收到 ImproperlyConfigured 错误。

于 2014-12-16T04:08:44.333 回答