第一个第一个Django项目:博客案例项目:博客案例
1.项目结构:
2.Blog.settings.py中的INSTALLED_APPS添加’index’,属性值。可以搜索到index页面。
3.配置主从urls:在Blog里配置主urls,可以映射到从urls。这样配置可以方便以后的URL管理。
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^blog/', include("index.urls")),
]
4.开发index主项目:
index/admin.py
class ArticleAdmin(admin.ModelAdmin):
list_display = ['id','title','context','author','Article_classification','create_time'] list_filter = ('create_time','Article_classification')
#为后台添加的分类器
admin.site.register(Article,ArticleAdmin)
5.index/models.py
class Article(models.Model):
title=models.CharField(max_length=32,default='title')
context=models.TextField(null=True,blank=True)
create_time=models.DateField(auto_now=True)
author=models.CharField(max_length=32,default='author')
Article_classification=models.CharField(max_length=64,default='默认分类')
def __str__(self):
return self.title
6.index/urls.py
app_name="blog"
urlpatterns = [
url(r'^index/', views.index,name="index"),
url(r'^detail/(?P[0-9]+)', views.article_content,name='detail'),
url(r'^edit/(?P[0-9]+)', views.article_edit,name="edit"),
url(r'^edit_action/',views.edit_action,name="edit_action"),
url(r'^dele_article/(?P[0-9]+)',views.dele_article,name="dele_article"),
]
7.index/views.py
from django.shortcuts import render
from .models import Article
# Create your views here.
def index(request):
articles=Article.objects.all()
return render(request,"index.html",{'articles':articles})
def article_content(request,art_id):#文章详情页
artcle=Article.objects.get(pk=art_id)
return render(request,"content.html",{'art':artcle})
def article_edit(request,art_id):#文章编辑页
if str(art_id)=='0':
return render(request,"edit.html")
else:
art=Article.objects.get(pk=art_id)
return render(request,"edit.html",{'art':art})