python django sae杂记

前言:这个笔记不是按照严格步骤来记的。主要是一次在sae上部署django框架的小项目,从最开始的django在本地的设置,常用命令,到最后如何部署到sae上,如何同步数据库。网上有关sae python的资料好像不多,这里按照自己遇到的困难依次记录一下,供大家参考。
1.测试Django是否安装
cmd->运行python->运行 import django->运行django.VERSION
2.Django安装
Windows系统上,推荐使用7-Zip(http://www.djangoproject.com/r/7zip/)来解压缩.tar.gz文件。 解压缩
完成后,以管理员权限启动一个DOS Shell(命令提示符),然后在名字以Django‐开始的目录里执行如下命
令:
python setup.py install
3.安装django之前,应该先安装合适的python版本,具体版本从官网查阅

4.创建工程
任意路径下创建一个根目录,比如X:\myproject
运行django-admin.py startproject mysite,这样,会在根目录下创建项目目录“mysite”
(如果用的是 setup.py 工具安装的 Django , django‐admin.py 应该已被加入了系统路径中。)
对于django 1.6,创建的目录结构有些不同,mysite目录下,有两个内容,一个是manage.py另一个是一个同名的mysite子目录,所有views.py等内容应该放置于这个子目录中

5.运行开发服务器
进入到项目目录 运行命令
python manage.py runserver
开发服务器开启后,关闭cmd框就关闭服务器

6.测试网页
浏览器中输入127.0.0.1:8000/test/即可
其中,test与url.py中的声明对应
比如:
from django.conf.urls import patterns, include, url

from django.contrib import admin
from djangoTest.views import hello
admin.autodiscover()

urlpatterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
('^hello/$', hello),#或者url ('^hello/$', hello),
)

6.模板使用
在1.6里,settings.py文件中,没有TEMPLATE_DIR 这一项,需要手动加入
首先在settings.py中加入TEMPLATE_DIR,指明模板的位置
然后在views.py中,import get_template方法
使用get_template直接调用模板在TEMPLATE_DIR的名字

7.如何设置静态文件js css的调用路径
三个步骤:
1-

     打开settings.py文件,添加下面这条语句:

     STATICFILES_DIRS = (os.path.join(os.path.dirname(__file__), '../static/').replace('\\','/'), )

     意思是让服务器去setting.py文件的上一层目录的static文件夹下查找静态文件。

2-

     然后在app的urls.py文件中添加如下语句:

     from django.conf import settings

     在urlpatterns中添加:

      ( r'^static/(?P<path>.*)$',

        'django.views.static.serve',

        { 'document_root': settings.STATIC_ROOT }),

3-

     使用时在模板中直接引入静态文件即可,如:

    <link rel = "stylesheet" type = "text/css" href = "/static/css/base.css">

7.2结合sae设置static文件
http://www.douban.com/group/topic/36429424/
本体调试的话,只需要在setting里规定好
STATIC_URL = '/static/'

# Additional locations of static files
STATICFILES_DIRS = (
    # Put strings here, like "/home/html/static" or "C:/www/django/static".
    # Always use forward slashes, even on Windows.
    # Don't forget to use absolute paths, not relative paths.
    './static',
)
但是如果把static文件放入太深的文件路径,sae找不到,默认的应该放在版本号的文件夹之下
html文件里 通过相对于项目路径
“static/css/XXX.js”来访问就行了
不需要再在config.yaml里设置了

8.使用django模板嵌套时

    嵌套处写{%block XXX%}{%endblock%},注意第一个大括号必须是block开头

在要嵌入的子文件,第一行用{%extends FILENAME.html%}, FILENAME是上文包含嵌套处的那个文件的文件名。之后在子文件中{%block XXX%}{%endblock%}两个大括号之间填写插入内容即可


9.django数据库连接(mysql)

首先,安装数据库,这里使用的是mysql 5.1

之后,安装针对django的connector——MySQL-python-1.2.4b4.win32-py2.7

在settings.py文件里,进行配置

DATABASES = {
'default':{
'ENGINE' : 'django.db.backends.mysql',
'NAME' : 'tasty',
'USER' : 'root',
'PASSWORD' : 'code',
'HOST' : '127.0.0.1',
'PORT' : '3306',
},
}

注意各个字段的名称应该对应相同,中间用":"连接,不是"="。

最后测试连接是否成功,prompt line中进入有manage.py文件所在的目录,运行命令

python manage.py shell 加载配置

运行命令

from django.db import connection

cursor = connection.cursor()

如果没有报错,则代表连接成功


10.app设置
 django要求,模型必须建立在app里
建立app的命令,在manage.py所在目录下输入:
python manage.py startapp name
那么会在原来project的旁边新建一个name文件夹,里面带有一个app默认的结构,其中包含一个models.py文件
进入原来的project文件夹下,找到setting.py中的INSTALLED_APP,添加字段‘“name”,’进入tuple中,记得要带最后的逗号
在models.py文件中建立好表之后,在manage.py目录下运行
python manage.py validate
如果输出0 errors found 那么可以继续输入
python manage.py sqlall name
会输出创建name app中models.py所创建表达语句
确认无误后输入命令
python manage.py syncdb
这是数据库中会多出几个表。注意,如果settings.py中有其他app开启,也会巍峨他们创建表。不需要的话应该注释掉。
如果要修改表结构,只有两种总途径,一种是删掉数据库里的表重新syncdb
另一种是,单独执行update 表的数据库语句,然后对应的去修改models.py文件里的语句

11.sae mysql设置
首先 mysql在windows上是大小写不敏感的,而在linux上是大小写敏感的

在本地django上建立app,建立model,并且syncdb
在管理软件里导出数据库,到sae上管理mysql项,进入管理页面,可以选择导入,上传sql文件
如果大小写不相同,可以参考网上方法,自定义表名(http://my.oschina.net/zhudibrian/blog/132061)
也可以在sae的数据库,编辑表名
             
12.boostrap 的col 和span
col是bootstrap3.0的,用来排版的标签
而 span是bootst 2.3用来排版的标签























评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值