Python2.7 + Django 1.11
工程名mysite, app name 是blog
mysite/urls.py
from django.conf.urls import include, url
from django.contrib import admin
urlpatterns = [
url(r'^blog/', include('blog.urls')),
url(r'^admin/', include(admin.site.urls)),
]
mysite 目录与blog目录同级
blog/urls.py
from django.conf.urls import url
from blog import views
urlpatterns = [
url(r'^$', views.archive),
url(r'^create/', views.create),
]
blog/templates/archive.html
<!-- archive.html -->
<!-- archive.html -->
<form action="/blog/views/create/" method="post">
Title:
<input type=text name=title><br>
Body:
<textarea name=body rows=3 cols=60></textarea><br>
<input type=submit>
</form>
<hr>
{% for post in posts %}
<h2>{{ post.title }}</h2>
<p>{{ post.timestamp }}</p>
<p>{{ post.body }}</p>
<hr>
{% endfor %}
blog/models.py
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models
class BlogPost(models.Model):
title = models.CharField(max_length=150)
body = models.TextField()
timestamp = models.DateTimeField()
class Meta:
ordering = ('-timestamp',)
# Create your models here.
blog/views.py
# -*- coding: utf-8 -*-
# code for django 1.11
from __future__ import unicode_literals
from django.shortcuts import render
from django.http import HttpResponse, HttpResponseRedirect
from django.template import loader, Context
from blog.models import BlogPost
# Create your views here.
from datetime import datetime
from django.shortcuts import render_to_response
from blog.models import BlogPost
def archive(request):
posts = BlogPost.objects.all()[:10]
return render_to_response('archive.html', {'posts': posts})
def create(request):
if request.method == 'POST':
BlogPost(
title=request.POST.get('title'),
body=request.POST.get('body'),
timestamp=datetime.now(),
).save()
return HttpResponseRedirect('/blog/')
运行总是报错:
Page not found (404)
Request Method: POST
Request URL: http://localhost:8080/blog/views/create/
Using the URLconf defined in mysite.urls, Django tried these URL patterns, in this order:
^blog/ ^$
^blog/ ^create/
^admin/
The current path, blog/views/create/, didn't match any of these.
You're seeing this error because you have DEBUG = True in your Django settings file. Change that to False, and Django will display a standard 404 page.
相关推荐
django-base-template:Django2 + Bootstrap3 +预配置应用程序(例如Allauth,django_compressor)的项目模板。 可能是启动完整Django项目的最快方法
Django2.2 + / Django1.11完整安装程序关于此模板仅需几分钟即可安装功能齐全的Django网站。 Django 1.11(适用于python2.7)Django 2(python3
Django与setuptools集成指南——适用于Django 1.11和Python 2.7环境
本文还有配套的精品资源,点击获取 简介:在使用Python 2.7和Django 1.11进行Web开发时,必须确保先安装setuptools包管理工具。Setuptools让Python项目的安装、打包和分发变得更加便捷,包括创建和部署egg文件、扩展distutils功能、使用easy_install工具、编写setup.py脚本和管理requirements.txt文...
python web开发框架Django
在Python 2.7版本下,Django 1.11是一个稳定且广泛使用的版本,提供了丰富的功能和优秀的性能。
Django学习笔记
### Django 学习笔记知识点详解#### 一、环境搭建**操作系统**: CentOS 6、CentOS 7 **Python 版本**: 2.7.5 **Django 版本**: 1.11.9
django-field-history:Django应用程式,可追踪模型栏位的变更
django-field-history 一个Django应用程序,用于跟踪对模型字段的更改。 对于Python 2.7 / 3.4 +和Django 1.11 / 2.0 +。 其他类似的应用程序


