2017-06-10 28 views
0

我是一名初學者在Django和Python。我試圖從發佈數據庫值到我的HTML模板,但不能這樣做 這裏是我的模型文件Django不從數據庫發佈值

from __future__ import unicode_literals 

    `from django.db import models 

    `class post(models.Model): 
     title = models.CharField(max_length=140) 
     body = models.TextField() 
     date = models.DateTimeField()` 
     `from django.db import models` 

    urls file 

     `from django.conf.urls import url,include 
    from . import views 
    from django.contrib.auth.views import login 
    from django.views.generic import ListView, DetailView 
    from personal.models import post` 

    `urlpatterns = [ 

     url(r'^projects/',views.projects, name='projects'),` 

     views.py file 

# -*- coding: utf-8 -*- 
from __future__ import unicode_literals 

from django.shortcuts import render 
from .models import post 
from personal.models import post 

def projects(request): 
    return render(request,'personal/projects.html') 

,而這創造MySQL中的表personal_post當我引用它在我的模板projects.html通過{{post.title}}或{{projects_post.title}},它不會返回任何值。 ]

我也有使用Python的硬盤的方式和Django的發動2017年作爲學習的Django的一部分,其他任何書籍理解

+0

你可以分享你views.py代碼和文檔?您可能未從項目(...)方法傳遞上下文。 – xennygrimmato

回答

0

您需要將posts通過在上下文視圖中的變量,序到在模板上呈現它。

試試這個,

def projects(request): 
    posts = post.objects.all() 
    return render(request,'personal/projects.html', {'posts' : posts }) 

且模板中,

{% for post in posts %} 
    {{ post.title }} 
{% endfor %} 

對於從視圖中繪製變量的模板,你需要通過一個背景下,這是連鍵的字典他們名稱和值作爲變量的內容。

檢查出更多關於render功能和上下文here...