2017-02-18 7 views
-1

я писал в results.html,Как я могу показать содержимое данных модели в html-файле?

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Score</title> 
</head> 
<body> 
    <h1>Score</h1> 
    <h2>Your score is {{ scoreresults.result }}</h2> 
</body> 
</html> 

Но теперь, эта часть {{ user.result }} из <h2>Your score is {{ user.result }} </h2> является пустым в моем браузере.

я писал в models.py

from django.db import models 
from django.contrib.auth.models import User 
class ImageAndUser(models.Model): 
    user = models.ForeignKey("auth.User", verbose_name="imageforegin") 
    result = models.CharField(max_length=64, null=True) 

    def __str__(self): 
     return '{} {}'.format(self.user,self.id) 

Итак, ImageAndUser модель результирующих данных. Я не могу понять, как назначить модель ImageAndUser в results.html. Кроме того, я писал в serializer.py

from .forms import UserImageForm 
from rest_framework import serializers 
from .models import ImageAndUser 

class ImageSerializer(serializers.ModelSerializer): 
    class Meta: 
     model = ImageAndUser 
     fields =(
      'image', 
      'result', 
      'user', 
      'id', 
     ) 

     read_only_fields = (
      'user', 
     ) 

    def create(self, attrs): 
     attrs['user'] = self.context.get('request').user 
     print(attrs) 
     return super(ImageSerializer,self).create(attrs) 

Теперь я писал в views.py

def scoreresults(request): 
    d = { 
     'scoreresults': ImageAndUser.objects.result(), 
    } 
    return render(request, 'registration/accounts/results.html', d) 

в urls.py

from django.conf.urls import url 
from . import views 
from django.views.generic import TemplateView 

urlpatterns = [ 
    url(r'^scoreresults$', TemplateView.as_view(template_name='registration/accounts/results.html'), 
     name='tcresults'), 
] 

Но это не сработало.

Итак, как я могу это исправить?

+0

Вы можете показать свой просмотр? – GwynBleidD

+0

Я не писал ничего, что связано с результатами. Html в views.py – user7523656

+2

Итак, когда и как ваш шаблон html используется? –

ответ

0

У вас здесь много бит, но ни одна из них не связана друг с другом.

Основная проблема заключается в вашем URL-адресе; он не указывает на ваше мнение. Вместо того чтобы использовать TemplateView заявленного в самом URL, вы должны указать его функцию зрения вы определили:

url(r'^scoreresults$', views.scoreresults, name='tcresults') 

Вам не кажется, что с помощью сериалайзера на всех; и вам это не нужно.

+0

thx, ur comment.I написал код ur, но это не сработало. Что мне делать? – user7523656

Смежные вопросы