2017-04-12 221 views
1

我有问题显示从Model.I图像有标题而不是图片。我不知道那是什么原因。图片无法显示Django

from django.db import models 

class Games(models.Model): 
    name = models.CharField(max_length=250) 
    platform = models.CharField(max_length=500) 
    genre = models.CharField(max_length=100) 
    language = models.CharField(max_length=100) 
    image = models.ImageField(upload_to='Images_game',default='') 
    # def __str__ (self): 
    # return self.Name 

class Game_detail(models.Model): 
    game = models.ForeignKey(Games,on_delete=models.CASCADE) 
    subcryption = models.TextField() 
    publisher = models.CharField(max_length=250) 
    date_of_publish = models.DateField() 

class Order(models.Model): 
    person_name = models.CharField(max_length=24) 
    person_surname = models.CharField(max_length=24) 
    street = models.CharField(max_length=45) 
    city= models.CharField(max_length=45) 

views.py

from django.shortcuts import render 
    from .models import Games,Game_detail,Order 
    from django.shortcuts import render,get_object_or_404,redirect 
    from django.views.generic import ListView,DetailView,CreateView 

     class IndexView(ListView): 
      template_name ='games/list.html' 
      context_object_name = 'all_games' 
      model = Games 
      def get_queryset(self): 
       return Games.objects.all() 


     class Item_Detail (DetailView): 

      context_object_name = 'object' 
      template_name ='games/detail.html' 
      model = Games # tu jest wazna zmiana 

      def get_context_data(self, **kwargs): 
       context = super(DetailView,self).get_context_data(**kwargs) 
       context['Game_detail']=Game_detail.objects.all() 
       return context 



     class Create_order (CreateView): 
      template_name ='games/create.html' 
      model= Order 
      fields = ['person_name','person_surname','street','city'] 

settings.py

from django.conf.urls import include,url 
from django.conf.urls import url 
from django.contrib import admin 
from django.conf import settings 
from django.conf.urls.static import static 

urlpatterns = [ 
    url(r'^admin/', admin.site.urls), 
    url(r'^games/',include("games.urls")), 
    ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 

list.html模板

<!DOCTYPE html> 
<html> 
<head> 
<title>Page Title</title> 
</head> 
<body> 
{% for obj in all_games%} 
<a href ='{%url "detail" pk=obj.pk%}'>{{obj.name}}</a> 
{{obj.image}} 
{{obj.platform}} 
{{obj.genre}} 
{{obj.language}} 
{% endfor %} 


</body> 
</html> 

我认为这将是与正确的轨道,以图片的问题。我加入数据库和图片上传图片文件夹

回答

0

您需要指定模板

<img src="{{obj.image.url}}" />. 

你是存储在数据库中上传路径,所以在src你可以有OBJ。图像输入,应该能够看到图像就好。

+0

。这有效,但我不能设置宽度和高度图像没有显示 – Gornl