文档章节

Django+SAE个人博客 四

卜星星
 卜星星
发布于 2015/10/15 11:08
字数 896
阅读 79
收藏 0
点赞 0
评论 0

参考资料:Django Web开发指南.pdf 2009年5月第1版

以下内容中,所有提到jackerb都是我自己的项目名称,所以需要根据自己的来设定。


已经有了admin后台管理了,那么,现在就增加上blog应用,来实现写自己的博客的功能。


  1. 创建应用blog

使用命令django-admin.py startapp blog,那个书中说用python manage.py startapp blog,其实这是一样的,不过这里需要提一个事情,高版本和低版本的django生成这个blog的位置是不一样的,比如低版本的django那个manage.py文件和settings.py文件这些是在同一个目录下的,但是高版本的manage.py在上一级目录的,在哪都不是问题,关键是你要理解在import这些应用的时候,这个格式,如果你是使用高版本的django,按照书上的执行,生成的blog是和manage.py jackerb这些在同一级目录下的,因此在引用的时候使用import jackerb。但是我在创建blog的时候,没有在manage.py文件所在的目录下,我是又进入了jackerb目录下执行的django-admin.py startapp blog,所以我在使用blog的时候,要

import jackerb.blog,就这么点区别。

因此,我先进入jackerb目录,然后执行django-admin.py startapp blog

然后看到blog目录下的文件结构是这些:

我这里没有提到这些东西都是干什么的,因为都是在书里看的,而我这里只是记录我自己Django+SAE的过程。

2. 修改jackerb/settings.py文件,增加blog

找到INSTALLED_APPS,在最后加上'jackerb.blog'

3. 修改blog/models.py,增加Blog类

from django.db import models

from django.contrib import admin

class Blog(models.Model):

    title = models.CharField(max_length=200)

    category = models.CharField(max_length=200)

    body = models.TextField()

    timestamp = models.DateTimeField()

admin.site.register(Blog, BlogAdmin)

现在把刚才所有增加的文件和修改的文件都用svn add和svn commit增加并提交。

我的上面有一个错误,就是图片中参数里面model.Model,其实是models.Model。

4. 现在新增加了blog应用后,就需要同步数据库了

前面我们提到过,在settings.py中我们使用了一个monkey的模块,在需要同步数据库的时候,我们需要把这个注释去掉,所以我本地把这个注释去掉,不需要提交。这时候执行,python manage.py syncdb。

就会生成blog有关的表了。生成后不要忘了把monkey再注释上。

5. 打开http://jackerb.sinaapp.com/admin/

这时候就可以看到已经有了blog了。这时候我们就可以,点击增加add,来增加我们自己的博客了。其实现在完成可以使用了,只要自己不觉得麻烦。并且,现在就可以把我们自己的博客在这里写了。


这时候写完,发现名字显示的都是Blog object,没有显示我们定义的博客名称,现在就来设置一下。

  1. 修改blog/models.py

from django.db import models

from django.contrib import admin


class Blog(models.Model):

    title = models.CharField(max_length=200)

    category = models.CharField(max_length=200)

    body = models.TextField()

    timestamp = models.DateTimeField()


class BlogAdmin(admin.ModelAdmin):

    list_display = ('title', 'category', 'timestamp')


admin.site.register(Blog, BlogAdmin)

把修改提交到SAE上,这时候刷新以前的网页,就可以看到博客按照标题、类别、时间来显示了。


这一节,就到这里,之后我会把自己的博客内容弄到我自己的SAE上。现在我们可以来编辑自己的博客了,但是要让别人看到怎么办呢,这个页面是不能给别人来看的,下一节就按照那个资料中说的,继续操作。






© 著作权归作者所有

共有 人打赏支持
卜星星
粉丝 26
博文 111
码字总数 68736
作品 0
海淀
程序员
Django+SAE个人博客 七

以后的博客就记录在我自己的个人博客下了,这是第七节的地址: http://jackerb.sinaapp.com/blog/7/ 扫码关注,更多惊喜

卜星星
2015/10/19
37
0
Django+SAE个人博客 五

参考资料:Django Web开发指南.pdf 2009年5月第1版 以下内容中,所有提到jackerb都是我自己的项目名称,所以需要根据自己的来设定。 上节我们已经可以编辑自己的博客了,那么这一节就把我们的...

卜星星
2015/10/15
39
0
Django+SAE=个人博客 一

本地开发环境: 操作系统:OS X Yosemite Python版本:2.7.6 Django版本:1.5.12 远程: 使用新浪的SAE 参考资料:Django Web开发指南.pdf 2009年5月第1版,根据书中第二章完成,建议先在本地...

卜星星
2015/10/14
114
0
Django+SAE个人博客 九

第九节地址: http://jackerb.sinaapp.com/blog/9/ 扫码,获取更多精彩内容

卜星星
2015/10/19
69
0
Django+SAE个人博客 六

这一节来解决一些我自己的需求。 http://jackerb.sinaapp.com/blog/ 这里一下子把所有博文都显示出来了,并且每个博文的全部内容也都显示出来了,这样不符合我们一般见到的样式,所以先修改博...

卜星星
2015/10/15
80
0
Django+SAE个人博客 八

第八节地址: http://jackerb.sinaapp.com/blog/8/ 扫码关注,更多惊喜

卜星星
2015/10/19
18
0
Django+SAE个人博客 三

参考资料:Django Web开发指南.pdf 2009年5月第1版 以下内容中,所有提到jackerb都是我自己的项目名称,所以需要根据自己的来设定。 在第二节中,生成http://jackerb.sinaapp.com/admin,显示...

卜星星
2015/10/15
131
0
Django+SAE=个人博客 二

以下内容中,所有提到jackerb都是我自己的项目名称,所以需要根据自己的来设定。 参考资料:Django Web开发指南.pdf 2009年5月第1版 现在我们来启用Django的admin功能,并且连接上sae上的mys...

卜星星
2015/10/14
212
0
博客系统--LivaLog

LivaLog是一个博客系统(livalog=Blog+MicroBlog+GroupBlog),其创新之处有四: 以博客为核心,集成个人博客(Blog)、微博(MicroBlog)和团体博客(GroupBlog)于一体 使用方式有chrome(浏览器)+a...

liva
2010/11/22
3.5K
1
利用 Octopress 和 Github 搭建个人博客(一):基础环境搭建

引言 如果你只想安安静静的写博客而不被各种博客网站的条条框框限制,如果你想自建博客网站而又不想买域名租服务器等繁琐流程,如果你恰好懂些 和 ,那么 搭建个人博客是个不错的选择。Octop...

单刀土豆
07/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Spring Cloud云服务 - HongHu架构common-service 项目构建过程

上一篇我们介绍了《整合spring cloud云服务架构 - HongHu云架构common-service代码结构分析》,本节我们将对common-service整个项目进行剖析,将整个构建的流程给记录下来,让更多的关注者来...

itcloud
7分钟前
0
0
Connection reset

在使用HttpClient调用后台resetful服务时,“Connection reset”是一个比较常见的问题,有同学跟我私信说被这个问题困扰很久了,今天就来分析下,希望能帮到大家。例如我们线上的网关日志就会...

夜黑人模糊灬
11分钟前
0
0
如何写PHP规范注释

所有的文档标记都是在每一行的 * 后面以@开头。如果在一段话的中间出来@的标记,这个标记将会被当做普通内容而被忽略掉。 @access 该标记用于指明关键字的存取权限:private、public或prote...

度_
12分钟前
0
0
influxDB Ppostgis

PostGis 1.需要安装postgreSQL,postgis作为插件嵌入到postgreSQL中; 2.使用zip包直接安装,需要修改 makepostgisdb_using_extensions.bat文件中的路径,用户名,密码,然后直接运行; 3.没有...

courtzjl
16分钟前
0
0
多线程Thread-多线程顺序执行

需求:现在有两个任务,任务1和任务2,任务1中有多个线程,并且任务2必须等任务1完成后才能执行。 namespace TThread{ class Program { static void Main(string[] ar...

kaixinguo314
20分钟前
1
0
直播总结

https://blog.csdn.net/weiyuefei/article/details/70257616 视频: 上传服务,转码服务,视频一致性MD5 视频转码技术及转码实现详解 https://wenku.baidu.com/view/32702108844769eae009eda...

素雷
21分钟前
0
0
Linux系统-tcpdump常用抓包命令

序言 单独总结tcpdump抓包的常用命令 主要语法 过滤主机/IP: tcpdump -i eth1 host 172.16.7.206 抓取所有经过网卡1,目的IP为172.16.7.206的网络数据 过滤端口: tcpdump -i eth1 dst port...

MrBoyce
23分钟前
0
0
274. H-Index - LeetCode

Question 274. H-Index Solution 题目大意: 论文里的 h 因子判定,题目的意思可能有点晦涩。h 因子是评判学术成就的一种重要方法,h 因子越高越好,h 因子兼顾研究学术人员的学术产出数量与...

yysue
27分钟前
0
0
 Unable to read class [com.mrp.action.BaseAction]

struts2启动时,出现的 Unable to read class [com.mrp.action.BaseAction] java.lang.NoClassDefFoundError: com/opensymphony/xwork2/util/finder/DefaultClassFinder$InfoBuildingVisito......

uug
28分钟前
0
0
分发系统介绍&expect脚本远程登录&expect脚本远程执行命令&expect脚本传递参数

20.27 分发系统介绍 应用场景 企业中随之业务的逐渐增大,后端所使用的编程语言是php,系统为LAMP/LNMP架构,需要将代码上传到服务器中;代码会不断的迭代,这就需要在业务服务器上更新代码,...

影夜Linux
29分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部