文档章节

Django+SAE个人博客 四

卜星星
 卜星星
发布于 2015/10/15 11:08
字数 896
阅读 82
收藏 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上。现在我们可以来编辑自己的博客了,但是要让别人看到怎么办呢,这个页面是不能给别人来看的,下一节就按照那个资料中说的,继续操作。






© 著作权归作者所有

共有 人打赏支持
卜星星
粉丝 27
博文 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

没有更多内容

加载失败,请刷新页面

加载更多

Cookie 显示用户上次访问的时间

import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServlet;import javax.serv......

gwl_
今天
1
0
网络编程

第14天 网络编程 今日内容介绍  网络通信协议  UDP通信  TCP通信 今日学习目标  能够辨别UDP和TCP协议特点  能够说出UDP协议下两个常用类名称  能够说出TCP协议下两个常用类名称...

stars永恒
今天
1
0
二进制相关

二进制 众所周知计算机使用的是二进制,数字的二进制是如何表示的呢? 实际就是逢二进一。比如 2 用二进制就是 10。那么根据此可以推算出 5的二进制等于 10*10+1 即为 101。 在计算机中,负数以...

NotFound403
昨天
3
0
day22:

1、写一个getinterface.sh 脚本可以接受选项[i,I],完成下面任务: 1)使用格式:getinterface.sh [-i interface | -I ip] 2)当用户使用-i选项时,显示指定网卡的IP地址;当用户使用-I选项...

芬野de博客
昨天
2
0
Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现

自Spring Cloud Alibaba发布第一个Release以来,就备受国内开发者的高度关注。虽然Spring Cloud Alibaba还没能纳入Spring Cloud的主版本管理中,但是凭借阿里中间件团队的背景,还是得到不少...

程序猿DD
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部