Django基本命令最全收集

Django是一个python用于快速开发web应用的框架,它的很多特性使用极其方便快捷。当创建一个django项目和对项目进行管理的时候,会涉及到很多命令行命令。本文对其进行一些总结,以供方便查询。

django-admin.py startproject mysite

该命令在当前目录创建一个 mysite 目录。

django-admin.py这个文件在C:\Python27\Lib\site-packages\django\bin文件夹里,可以把该目录添加到系统Path里面。

Django内置一个轻量级的Web服务器。

进入 mysite 目录的话,现在进入其中,并运行 python manage.py runserver 命令

启动服务器,用http://127.0.0.1:8000/可以进行浏览了,8000是默认的端口号。

python manage.py runserver 8080

更改服务器端口号

python manage.py shell

启动交互界面

python manage.py startapp books

创建一个app,名为books

python manage.py validate

验证Django数据模型代码是否有错误

python manage.py sqlall books

为模型产生sql代码

python manage.py syncdb

运行sql语句,创建模型相应的Table

python manage.py dbshell

启动数据库的命令行工具

manage.py sqlall books

查看books这个app下所有的表

python manage.py syncdb

同步数据库,生成管理界面使用的额外的数据库表

Django关于站点管理Admin Site的常见问题解决方法

1. 改变django默认语言的方法?

仅需添加’django.middleware.locale.LocaleMiddlewar’到 MIDDLEWARE_CLASSES设置中,并确保它在’django.contrib.sessions.middleware.SessionMiddleware’* 之后* 。

2. 怎样将已有models加入到admin管理中?

本问题用实例演示,假如有个app叫做books,该app包里包含3个模块Publisher、Author和Book,以下是将该三个模块添加到admin管理中的步骤:

在“ books“ 目录下(“ mysite/books“ ),创建一个文件:“ admin.py“

在admin.py中输入以下代码

from django.contrib import admin

from mysite.books.models import Publisher, Author, Book

#以下3句,实现将模块添加到后台管理

admin.site.register(Publisher)

admin.site.register(Author)

admin.site.register(Book)

3) 重启服务器,刷新后台界面(比如http://127.0.0.1:8000/admin)发现添加成功

继续阅读Django关于站点管理Admin Site的常见问题解决方法

Ubuntu10.10 Server+Nginx+Django+Postgresql安装步骤

1,安装Ubuntu 10.10

1.1 使用默认安装,在更新apt的时候选择跳过

1.2 设置管理员的用户名和密码

1.3 安装openssh-server启动ssh服务,方便使用Bitvise Tunnelier,putty工具进行管理

sudo apt-get install openssh-server

继续阅读Ubuntu10.10 Server+Nginx+Django+Postgresql安装步骤

Django中定制自己的User和Group管理模块(类似对admin的二次开发)

django的admin后台管理实在强大,其实对于普通模型来说倒没什么,关键是对于权限系统,比如User和Group的管理,它做的非常好,让人总是想要充分利用它本身的功能。

然而在admin后台上直接进行二次开发有很多不友好的地方,比如你如果简单的扩充了User表,却不能够在系统本身的User模型中管理添加的字段,这涉及到dj源码(修改源码绝对不是好主意)

因此必须得自己来写权限系统,其实这里我们是对django的contrib下面的auth进行接口编写,下面是示意图:

其实正是因为对Auth(包括User和Group)的增删改查和对Auth的使用(验证权限等)之间没有直接的关系,因此我们可以简单的把Django核心中的User和Group作为一个简单的模型来使用,比如对Group的添加、修改、删除等等。

而使用的时候,因为直接访问的还是核心,它并不知道我们偷偷的写了很多源码自己来操纵User和Group,一切皆数据,数据即中介,对User和Group的使用,知识对数据的简单访问而已。

思路已经理清,可以对User和Group做如下的操纵来实现自己的、类似于Admin站点管理的模块:我们要使用的,只是源码核心中的User和Group的模型类model,因此我们可以建立自己模型表单,哈哈,简单的访问该模型表单,我们就是对User和Group的数据进行操作,简单吧~。

django1.4设置模板路径和CSS,JS,image等路径的方法

对于DJANGO这类MVC框架来说,路径问题可以称为一个谜一样的东西,很多人因为对路径不知道如何处理而觉得MVC实在是云里雾里不知所云。

本文主要解决django中关于模板路径设置、CSS文件路径设置、JS文件路径设置、图片路径设置等常见问题。文中将templates和media(包含js、css、images目录)放到了项目目录的根目录,更具有一般性质。

设定模板路径

设置模板路径比较简单,只要在setting.py里面的TEMPLATE_DIRS选项里面加上这么一句话即可:

import os.path
TEMPLATE_DIRS = (
    os.path.join(os.path.dirname(__file__), '../templates').replace('\\','/'),   

)

 

这意味着,你可以在项目的根目录下面,建立一个templates目录,里面放你所有的模板

设定CSS/JS/IMAGES等路径

1、在setting.py里面,加入下面一句话,指定根目录下面的media路径:

STATIC_PATH= os.path.join(os.path.dirname(__file__), '../media').replace('\\','/')

 

2、在urls.py里面设定这么一句话,将请求CSS/JS/IMAGES的URL转到该地方

(r'^site_media/(?P<path>.*)$','django.views.static.serve',{'document_root':settings.STATIC_PATH}),

 

3、那么在我们的模板里面,现在已经可以用以下方法访问JS/CSS/IMAGES

<link href="/site_media/style/style.css" rel="stylesheet" type="text/css" />

 

该方法的一个优点是,不用详细设置JS、CSS、images三个不同的路径,只要设定一个,在模版文件里面,直接指定文件的子目录就可以了,比如图片和JS可以这么写:

<img src=’/site_media/images/a.jpg’>

<script src=’/site_media/js/s.js’> </script>

请看这里,我们并没有在urls.py中指定/site_media/images这样的路径。