【问题标题】:Views in Django 1.8Django 1.8 中的视图
【发布时间】:2015-10-10 02:41:36
【问题描述】:

在我正在构建的电子商务模板中将视图链接到基本 HttpResponse 时遇到问题。

我得到的错误是 404,但是在查看了这里和文档所说的之后,我对我错过了什么感到有点困惑,

模型

   from django.db import models

class Category(models.Model):
    parent = models.ForeignKey('self', null=True, blank=True)
    name = models.CharField(max_length=255)
    slug = models.SlugField(max_length=150)
    description = models.TextField()
    pub_date = models.DateTimeField(auto_now_add=True)
    mod_date = models.DateTimeField(auto_now=True)

class Manufacturer(models.Model):
    name = models.CharField(max_length=150)
    slug = models.SlugField(max_length=150)


class Product(models.Model):
    category = models.ForeignKey(Category)
    manufacturer = models.ForeignKey(Manufacturer)
    name = models.CharField(max_length=300)
    slug = models.SlugField(max_length=150)
    description = models.TextField()
    photo = models.ImageField(upload_to='itemphotos')
    price_in_sterling = models.DecimalField(max_digits =6, decimal_places=2)
    available = models.BooleanField()
    instock = models.IntegerField()
    pub_date = models.DateTimeField(auto_now_add=True)
    mod_date = models.DateTimeField(auto_now=True)

我的意见.py

    from django.shortcuts import render
    from django.http import HttpResponse

    def index(request):
        return HttpResponse("Hi, your view worked")

    def catagory(request):
        return HttpResponse("Hi, you are looking at the catagory landing page")

    def manufacturer(request):
        return HttpResponse("Hi, here you can shop by brand")

    def product(request):
        return HttpResponse("Hi, here you can search by product")

我的 urls.py

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


urlpatterns = [
    url(r'^productcatalog/', include('productcatalog.urls')),
    url(r'^admin/', include(admin.site.urls)),
]

应用产品目录中的我的 urls.py

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


urlpatterns = [
    url(r'^$', views.index, name='index'),
    url(r'^productcatalog/$', views.catagory, name='catagory'),
    url(r'^productcatalog/$', views.manufacturer, name='brand'),
    url(r'^productcatalog/$', views.product, name='products'),
]

我确定错误在第二个 urls.py 文件中,但似乎无法捕捉到它。

【问题讨论】:

    标签: python-2.7 django-views django-1.8


    【解决方案1】:

    我有另一种方法

    urls.py from views import product urlpatterns=[url(r'^product/$', product)]

    views.py def product(request): view="""<html><head></head><body><p>something</p></body></html> """ return HttpResponse(view)

    我不记得我是否使用了 render 方法,但在将变量放入 html 页面时特别有用

    【讨论】:

    • 我试过这个 Luis 并且我想出了同样的错误。我正在尝试将 3 个类从一个模型传递到 4 个页面。一页链接到三个单独的页面。我也会添加模型,这可能会有所帮助
    【解决方案2】:

    您对所有视图函数使用相同的 url。尝试更改它。

    urlpatterns = [
    url(r'^$', views.index, name='index'),
    url(r'^productcatalog-1/$', views.catagory, name='catagory'),
    url(r'^productcatalog-2/$', views.manufacturer, name='brand'),
    url(r'^productcatalog-3/$', views.product, name='products'),
    

    ]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-03-06
      • 2015-09-27
      • 2017-04-27
      • 2015-08-10
      • 1970-01-01
      • 2015-11-09
      • 2016-02-24
      相关资源
      最近更新 更多