django查看连接到模型和URL

时间:2015-01-18 13:56:34

标签: django django-models django-views django-urls

我正在写Django的第一个视图。我花了无数个小时试图解决这个问题。我的一个视图出现在网页中,但另一个我试图从数据库中检索数据的视图不是。我已经使用python shell来查看代码是否正常工作。以下是我的模型,视图,我的网址和模板。此外,任何文档网站也会很棒 - 或书籍。谢谢大家。

models.py

from django.db import models

class Bee_hive(models.Model):
    gid = models.IntegerField(primary_key=True)
    hive_title = models.CharField(max_length=50)
    date_hive_death = models.DateField()
    date_hive_created = models.DateField()
    description = models.TextField()

    def __str__(self):
        return self.hive_title

views.py

from django.shortcuts import render
import datetime

from inventory.models import Bee_hive

def index(request):
    now = datetime.datetime.now()
    context = {'current_date': now}
    return render(request, 'inventory/index.html', context)

def hive_names(request):
    titles = Bee_hive.objects.all()
    context = {'titles': titles}
    return render(request, 'inventory/index.html', context)

我的模板包含以下内容:

<html>
    <body>
        <p>Hello, David!</p>
        It is now {{ current_date }}.
        <p>The hive name is: {{ titles }} </p>
    </body>
</html>

urls.py

from django.conf.urls import patterns, url

from inventory import views

urlpatterns = patterns('',
    url(r'^$', views.index, name='index'),
    url(r'^$', views.hive_names, name='hive_names'),

)

这是我的结果:

Hello, David!

It is now Jan. 18, 2015, 7:08 a.m..
The hive name is:

1 个答案:

答案 0 :(得分:1)

您应该为不同的视图设置不同的网址:

urlpatterns = patterns('',
    url(r'^$', views.index, name='index'),
    url(r'^hive-names/$', views.hive_names, name='hive_names'),
)