本文介绍的是在eclipse+pydev 平台下,利用django 搭建blog的第1部分:建立数据库+admin部分

步骤一:创建myweb项目+blog应用

1. Eclipse下新建一个django项目,命名:myweb。 生成的目录结构如下:

    

2. 选择myweb,右键Run-As django,如下图:

    

3. 访问页面:http://127.0.0.1:8000/,打开如下页面,说明配置成功

    

4. 创建blog应用:myweb项目右键-django-create application,如下图:

    

5  blog应用生成的目录结果如下:

    

步骤二:设置model+同步数据库

注意事项:同步数据库之前,要先在settings.py文件中添加对应的app

1. myweb.settings.py 添加bolg app,如下:

2. 设置数据库,我们用自带的sqlite3,打开myweb.settings.py文件,编辑如下(默认就是这样,可以不用修改):

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}

3. 设置model:打开blog.model.py文件,编辑如下:    

from django.db import models

# Create your models here.
class BlogPost(models.Model):
title=models.CharField(max_length=50)
body=models.TextField()
timestamp=models.DateTimeField()

4. 同步数据库信息,myweb右键-django-sync DB,如下图:

    

  输出如下:

  

    

    这里,根据提示,我们需要打开命令行创建admin页面的超级用户,如下图:

    

步骤三:自动设置admin应用

1. 打开blog.model.py文件,编辑如下:

from django.db import models
from django.contrib import admin # Create your models here.
class BlogPost(models.Model):
title=models.CharField(max_length=50)
body=models.TextField()
timestamp=models.DateTimeField() admin.site.register(BlogPost)

2. 试用admin,运行django项目,页面中输入:http://127.0.0.1:8000/admin/,如下图1:

  输入之前设置的用户名和密码,进入页面,如下图2:

  点击+add按钮,进入 页面,如下图3:

  输入内容进行保存,如下图4:

  

  

  

  

步骤四:优化blog显示

1. 上图可以看出显示的都是blogpost object 对象,未显示blog具体的title和timestamp,我们进行优化设置

  打开blog.models,进行编辑如下:

from django.db import models
from django.contrib import admin # Create your models here.
class BlogPost(models.Model):
title=models.CharField(max_length=50)
body=models.TextField()
timestamp=models.DateTimeField() class BlogPostAdmin(admin.ModelAdmin):
list_display=('title','timestamp') admin.site.register(BlogPost,BlogPostAdmin)

  再次运行,查看

  

至此,blog搭建成功

  

django构建blog--建立数据库部分+admin部分(eclipse+pydev)的更多相关文章

  1. [Django]中建立数据库视图

    Django中建立数据库视图 Django中没有建立视图的接口.假设要建立一个视图须要一些手动的改变. 这里使用的Django 版本号>1.5, 使用的数据库为mysql 第一步 建立视图,比如 ...

  2. python Django教程 之 模型(数据库)、自定义Field、数据表更改、QuerySet API

    python  Django教程  之 模型(数据库).自定义Field.数据表更改.QuerySet API 一.Django 模型(数据库) Django 模型是与数据库相关的,与数据库相关的代码 ...

  3. Django架设blog步骤

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...

  4. Django架设blog步骤(转)

    最近在研究Python,起初是因为想做个爬虫,昨天看了点基础教程,台湾辅仁大学的视频,了解了python的语法规范及语言特性,主要有三: 1.动态脚本语言: 2.语法简洁,强制缩进: 3.应用广泛,w ...

  5. HelloDjango 系列教程:第 04 篇:Django 迁移、操作数据库

    文中涉及的示例代码,已同步更新到 HelloGitHub-Team 仓库 我们已经编写了博客数据库模型的代码,但那还只是 Python 代码而已,django 还没有把它翻译成数据库语言,因此实际上这 ...

  6. 循序渐进Python3(十二) --2--  web框架之django简单实现oracle数据库操作

    在 Django 中构建 Oracle 数据库支持的 Web 应用程序 了解如何配置 Django 以便与 Oracle 数据库交互,并使用 ORM 进行数据库连接.             产能在软 ...

  7. 使用django执行数据更新命令时报错:django.db.migrations.exceptions.InconsistentMigrationHistory: Migration admin.0001_initial is applied before its dependency users.00 01_initial on database 'default'.

    如果在重新封装更新用户表之前,已经更新了数据表,在数据库中已经有了django相关的依赖表,就会报错: django.db.migrations.exceptions.InconsistentMigr ...

  8. Django拾遗--pagination、sitemap、admin、form

    Django拾遗--pagination.sitemap.admin.form pagination 其实这个分页模块的原理就是根据设定的每页条数来分割queryset.查询结果/每页子项数目=页数 ...

  9. 初学Django基础01 建立工程,目录结构,常用配置,上下文管理,模板渲染

    django是python的web重量级框架,发展已经有10年多了,对应下面版本 Django 版本 Python 版本 1.8 2.7, 3.2 , 3.3, 3.4, 3.5 1.9, 1.10 ...

随机推荐

  1. 搭建高性能计算环境(九)、应用软件的安装之gaussian 09

    高斯软件一般使用的都是编译好的二进制版,所以解压缩后设置一下环境变量就可以用了. cd /opt tar xvf g09.tar.gz 设置环境变量,添加到/etc/profile文件中,重新登录后生 ...

  2. 测试一个C段网络的联通性

    #!/bin/bashPATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/binexport PATHnetwork ...

  3. C# 和 Unix 时间戳转换

    unix时间戳是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒. /// 时间戳转为C#格式时间 private DateTime GetTime(string timeSt ...

  4. Winform开发常用控件之Checkbox和CheckedListBox

    Winform的开发基本都是基于控件事件的,也就是事件驱动型的. 多选框的放置和值的获取有很多种,这里介绍几个简单常用的方法 1.直接放置Checkbox,并获取Checkbox的值 上图 做法也非常 ...

  5. 单个input框上传多个文件操作

    HTML页面: <div class="form-group thumb"> <label class="control-label col-xs-12 ...

  6. php header 函数详解

    网页的缓存是由 HTTP消息头中的“Cache-control”来控制的,常见的取值有private.no-cache.max-age.must- revalidate等,默认为private.其作用 ...

  7. 奇怪的函数 (codevs 3538/1696) 题解

    [题目描述] 给定n,使得x^x达到或超过n位数字的最小正整数x是多少? [样例输入] 11 [样例输出] 10 [解题思路] 首先想到枚举,但是范围有点大,n<=2*10^9,果断用二分.其实 ...

  8. javascripy的innerHTML在IE8下的异常

    使用jQuery的datatable插件的时候发现,IE8下显示异常,仔细调查一番,发现是浏览器对innerHTML的差异导致的. 实例代码: var nTd = document.createEle ...

  9. 【J2EE】struts-2.3.16.3+apache-tomcat-8.0.9开发环境部署,“Hello World”的实现。

    1.在官网下载Struts2的开发包 下载链接如下: http://120.203.229.30/5ff/2bc79/5ff16ae8698e1c321758a8f03a1bc0939892bc79/ ...

  10. python中的多继承

    python和C++一样,支持多继承.概念虽然容易,但是困难的工作是如果子类调用一个自身没有定义的属性,它是按照何种顺序去到父类寻找呢,尤其是众多父类中有多个都包含该同名属性. class P1 #( ...