Django理解
来源:互联网 发布:中国移动网络制式 编辑:程序博客网 时间:2024/06/05 18:07
manager.py中
if __name__ == "__main__": os.environ.setdefault("DJANGO_SETTINGS_MODULE", "cwBlog.settings") from django.core.management import execute_from_command_line execute_from_command_line(sys.argv)
加载settings配置文件
配置文件中初始化数据库,安装app匹配,模版路径。url根目录。中间件匹配。
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'. 'NAME': 'cwBlog', # Or path to database file if using sqlite3. # The following settings are not used with sqlite3: 'USER': 'root', 'PASSWORD': '258841679', 'HOST': '127.0.0.1', # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP. 'PORT': '3306', # Set to empty string for default. }}
TEMPLATE_DIRS = ( # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates". # Always use forward slashes, even on Windows. # Don't forget to use absolute paths, not relative paths. "cwBlog/html/template/")ROOT_URLCONF = 'cwBlog.urls'INSTALLED_APPS = ( 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles', 'cwBlog', # Uncomment the next line to enable the admin: 'django.contrib.admin', # Uncomment the next line to enable admin documentation: # 'django.contrib.admindocs',)
当1个http请求产生。
通过urls.py解析路径。并投递到对应的view视图函数中。
urlpatterns = patterns('', # Examples: # url(r'^$', 'cwBlog.views.home', name='home'), # url(r'^cwBlog/', include('cwBlog.foo.urls')), # Uncomment the admin/doc line below to enable admin documentation: # url(r'^admin/doc/', include('django.contrib.admindocs.urls')), # Uncomment the next line to enable the admin: url(r'^admin/', include(admin.site.urls)), url(r'^$', blog), url(r'^blog/$', blog),)
在视图函数中,加载数据模型,和模版。得到需要显示的数据以后,重绘模版。返回响应.
from django.template import loader, Contextfrom django.http import HttpResponsefrom cwBlog.models import BlogPostdef blog(request): posts = BlogPost.objects.all() t = loader.get_template('blog.html') c = Context({'posts' : posts}) return HttpResponse(t.render(c))
具体解析模版
其中post.timestamp | date:""
|表示后面接上过滤器
date格式化
{% extends "base.html" %}{% block content %} {% for post in posts %} <h2>{{ post.title }}</h2> <p>{{ post.timestamp | date:"1, F jS" }}</p> <p>{{ post.body }}</p> {% endfor %}{% endblock %}
- Django理解
- Django TemplateView理解
- Django TemplateView理解 Part2
- Django-CSRF的理解
- 理解 django.contrib.staticfiles(collectstatic)
- Django(一)--Web框架理解
- Django和Tornado 的理解
- [Django高级]理解django中的中间件机制和执行顺序
- [Django数据库模型]理解Django里的MTV开发模式
- 深入理解django的Urls分发
- Django 的 CSRF 保护机制理解
- 我理解的django的CSRF防御!
- 对于django的tastypie的理解
- 理解Django的makemigrations和migrate
- 理解django里的null和blank
- django学习教程(二)理解django框架的逻辑结构,创建第一个app
- 深入理解Django中的ORM数据库操作(Django系列1)
- django
- 有关platform builder 5.0编写流接口驱动程序
- 风险评估系统OpenVAS配置使用教程说明
- 在linux下查看CPU,内存大小
- Java 中的比较 equals() hashcode() comparable
- 如何在NP下读写游戏内存及如何进入NP进程
- Django理解
- n条直线互不平行且无三线共点的最多交点数max=1+2+……(n-1)=n(n-1)/2
- Struts2的Result Type详细回顾
- Tomcat7配置数据源
- HTTP头域字段详解
- C/S 与 B/S 的区别
- ‘感代效’输入处理输出流动结构(原创深度研究)
- 散谈游戏保护那点事~就从_TP开始入手吧
- SQLyog恢复数据库报错解决方法【Error Code: 2006 - MySQL server has gone away】