Django - отображение данных в шаблонах - PullRequest
1 голос
/ 29 февраля 2012

Я написал приложение Django для загрузки имени, доба и изображения. Данные, похоже, успешно хранятся в базе данных. Но когда я пытаюсь получить его и показать в шаблонах ... соответствующая страница выглядит пустой. Еще одна вещь, изображение хранится в папке с образцами, и я не знаю, как показать его в шаблонах.

Models.py

class BasicModel(models.Model):
    name = models.CharField(max_length=200)
    dob = models.DateField()
    photo = models.ImageField(upload_to='sample')

class BasicModelForm(ModelForm):
    class Meta:
            model = BasicModel

Views.py

def BasicView(request):
    if request.method == 'POST':
            form = BasicModelForm(request.POST, request.FILES)
            if form.is_valid():
                    data = form.save()
                    return preview(request, data.id)
    else:
            form = BasicModelForm()
    return render_to_response("unnamed.html", {'form': form}, context_instance=RequestContext(request))

def preview(request, id):
    obj = get_object_or_404(BasicModel, pk=id)
    return render_to_response("preview.html", {'obj': obj})

preview.html

<html>
<body>
{{ obj.name.as_p }}
{{ obj.dob.as_p }}
{{ obj.photo.as_p }}
</body>
</html>

Может ли кто-нибудь помочь мне в этом .. Я новичок в Джанго.

Спасибо!

Ответы [ 2 ]

2 голосов
/ 29 февраля 2012

Вы должны получить доступ к свойствам модели.Модель не форма.

Итак:

<html>
<body>
{{ obj.name }}
{{ obj.dob }}
{{ obj.photo }}
</body>
</html>
1 голос
/ 29 февраля 2012

Вы можете использовать настройку https://docs.djangoproject.com/en/dev/howto/static-files/, чтобы получить путь к изображению.Если данные не отображаются в шаблоне, убедитесь, что данные зафиксированы и сохранены в базе данных.

...