好久之前就想做一下自己的博客系统了,但是在网上查了查好像是需要会一些Node.js的相关知识,而且还要安装辣么多的库什么的,就不想碰了。但是我遇到了Django这么一款神器,没想到我的博客系统就这么建立起来了。虽然是最基础的类型。但是也算是成功了,这篇博客比较适合对Django有了一定了解的童鞋,如果是新手的话,建议先看一下django的基础知识点再来做实验,这样效率更高!
好了,话不多说,开始吧。
搭建框架
"color: #333333">django-admin startproject MyDjango
创建一个Django应用,名为MyBlog。这里应该注意的是应用隶属于项目的子集。通俗的来说应用文件夹是作为项目文件夹的子集而存在的。
django-admin startapp MyBlog
"htmlcode">
建好了数据库,接下来就是模型的创建了。因为我创建的是博客系统,所以必不可少的要发布关于博客的内容,于是需要有标题,内容,发布时间这些属性,详情如models.py文件 由于需要管理员对发布的博客进行管理,所以我们要对发布的博客设置一个管理模型 所以整个models.py文件里面就应该是这样的了。 接下来,就是同步一下数据库和模型之间的联系了。如果不做同步操作的话,就很有可能报出 django < 1.7 时: django > 1.7 时: 完善MVC模式 其实前面的步骤而言,我们已经是完成了model这个模块的功能了,接下来就是做好视图的映射就可以了。 这里面用到了模板文件,还传给了模板一个列表类型的参数,这些我们待会再叙。 "htmlcode">
关于如何映射,我的上一篇文章里面有详细的介绍,PyCharm开发Django基础配置。有兴趣的可以参考一下。好了,这次我们在完成了admin管理员用户的设置之后,就可以运行我们的程序了。 python manage.py runserver 出现了: 这时就可以在浏览器中输入 这样就实现了我们的博客系统的建立了。但是由于没有添加样式,所以看起来不是很好看,所以我们要添加以下模板的样式。 模板配置 接着刚才的继续,关于模板,这里面可谓是有着很深的设计哲学。了解过的大家肯定都会有感触,我就不多说了。 "htmlcode">
需要注意的就是模板中的模板标签以及模板变量都应该与views.py文件对应的函数中的字典变量相一致,否则django虽然不会报错,但也是不会显示数据的。 接下来刷新一下,输入http://127.0.0.1:8000/admin/ 点击add按钮,开始添加你的博文吧。 然后在浏览器中输入 大家可能已经看到了,问题就出在点击标题没有进入到相关的详情页面,那是因为还没有添加这个功能呢。(^__^) 嘻嘻…… 总结 今天一起做了一个简单的博客系统,虽然外观看起来并不是很好看,但是内容什么的差不多就是这样了。还有很多的地方需要完善。 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# Database
# https://docs.djangoproject.com/en/1.9/ref/settings/#databases
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': 'MyBlog.db',
'USER':'',
'PASSWORD':'',
'HOST':'',
'PORT':'',
}
}
from __future__ import unicode_literals
from django.contrib import admin
from django.db import models
# create the blog model
class BlogPost(models.Model):
title = models.CharField(max_length=150)
body = models.TextField()
timestamp = models.DateTimeField()
def __unicode__(self):
return self.title
# set the admin page for BlogPost
class BlogPostAdmin(admin.ModelAdmin):
list_display = ('title','timestamp')
# register the model (especially important
admin.site.register(BlogPost)
from __future__ import unicode_literals
from django.contrib import admin
from django.db import models
# create the blog model
class BlogPost(models.Model):
title = models.CharField(max_length=150)
body = models.TextField()
timestamp = models.DateTimeField()
def __unicode__(self):
return self.title
# set the admin page for BlogPost
class BlogPostAdmin(admin.ModelAdmin):
list_display = ('title','timestamp')
# register the model (especially important
admin.site.register(BlogPost)
django.db.utils.OperationalError: unable to open database file
而且这里也是很重要的一个环节。那就是关于Django版本的问题,我之前就在这上面栽过一次。
python manage.py syncdb
python manage.py makemigrations
python manage.py migrate
"htmlcode">
# create the view for blog show
def myBlogs(request):
blog_list = BlogPost.objects.all()
return render_to_response('BlogTemplate.html',{'blog_list':blog_list})
from django.conf.urls import url
from django.contrib import admin
from MyBlog.views import *
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^myBlogs/$',myBlogs),
]
Performing system checks...
System check identified no issues (0 silenced).
June 05, 2016 - 11:39:27
Django version 1.9.6, using settings 'MyDjango.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
http://127.0.0.1:8000/admin,登陆成功后可以点击下面的Blog Posts编辑博文了。然后点击SAVE 按钮,就可以发布我们的博客。接下来在浏览器中输入
http://127.0.0.1:8000/myBlogs/ 访问我们的博客系统了。
接下来就为我们的博客系统设置一下模板吧。
"htmlcode">
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>标题</title>
</head>
<style type="text/css">
body{
color: #efd;
background: #BBBBBB;
padding: 12px 5em;
margin:7px;
}
h1{
padding: 2em;
background: #675;
}
h2{
color: #85F2F2;
border-top: 1px dotted #fff;
margin-top:2em;
}
p{
margin:1em 0;
}
</style>
<body>
<h1>XX博文</h1>
<h3>小生不才,但求简约!</h3>
{% block content %}
{% endblock %}
</body>
</html>
{% extends "base.html" %}
{% block content %}
{% for post in blog_list %}
<h2>{{ post.title }}</h2>
<p>{{ post.timestamp }}</p>
<p>{{ post.body }}</p>
{% endfor %}
{% endblock %}
http://127.0.0.1:8000/myBlogs/
.你就可以看到你的博客列表了,如图
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
- 张敬轩2005《我的梦想我的路》几何娱乐[WAV+CUE][1G]
- 群星《人到四十男儿情(SRS+WIZOR)》[原抓WAV+CUE]
- 马久越《上善若水HQCDII》[低速原抓WAV+CUE]
- 龚玥《女儿情思》6N纯银SQCD【WAV+CUE】
- 张惠妹《你在看我吗》大碟15 金牌大风[WAV+CUE][1G]
- 群星《左耳·听见爱情》星文唱片[WAV+CUE][1G]
- 群星《抖音嗨疯-DISCO英文版》[WAV+CUE][1G]
- 群星.1990-情义无价(TP版)【中唱】【WAV+CUE】
- 马兆骏.1990-心情·七月【滚石】【WAV+CUE】
- 方伊琪.1979-沙鸥(LP版)【星岛全音】【WAV+CUE】
- 蔡琴《醇厚嗓音》6N纯银SQCD【WAV+CUE】
- 陈曦《遇见HQCD》[WAV+CUE]
- 大提琴-刘欣欣《爱的问候》HDCD[WAV+CUE]
- 周耀辉/邓慧中《从什么时候开始》[320K/MP3][95.71MB]
- 周耀辉/邓慧中《从什么时候开始》[FLAC/分轨][361.29MB]