hjr教程-Python(二):Dgingio

2017-01-12 19:07:42来源:CSDN作者:hjrcrj人点击

第七城市

Djingio

这是Python一个Web框架,自带一个简单的服务器可以用于调试,自带一个sqlite数据库(SQLite Database Browser 可以用这个软可视化打开),http://127.0.0.1:8000/admin可以进入一个自带的后台管理系统。
Djingio使用

Djingio常用指令

创建mysite工程项目:django-admin.py startproject mysite创建blog app :python manage.py startapp blog初始化python自带SQLite数据库:python manage.py syncdb再次初始化python自带SQLite数据库:python manage.py makemigrations blog启动django容器:python manage.py runserver

步骤

先配置好环境,然后使用下面常用指创建项目文件夹,创建后系统会自动生成一个文件夹,在项目文件夹下会有一个同名文件夹,里面放着

  1. manage.py —– Django项目里面的工具,通过它可以调用django shell和数据库等。

  2. settings.py —- 包含了项目的默认设置,包括数据库信息,调试标志以及其他一些工作的变量。

  3. urls.py —– 负责把URL模式映射到APP

    该文件夹不需要动,里面的各种配置需要时再进行更改,接下来退出该文件夹,在项目文件夹中新建各种APP

APP

djingio是由许多APP组成,在项目文件夹下每一个文件夹就是一个APP,是一个模块,负责一部分网站功能,每个APP文件夹里面有model.py+view.py+templete文件夹

model文件 + view文件 + templete文件夹

在每个app中,由以下三个部分组成,其中

  1. model.py 是操作数据库的

  2. view.py 是给templete里的html中的模板代码赋值的

  3. templete文件夹里面存放的是html文件,这些文件里面可以直接使用djingio自带的一些用{}包起来的语法,类似jsp、asp之类的混编代码,一些地方是模板代码。

    编码

    具体每个APP中的各个文件要怎么编码

    url写法

    urlpatterns = [//这个是自带后台的路径,没必要改,可以删掉url(r'^admin/', include(admin.site.urls)),//这个是固定的格式,前面是url最后一个单词名(用正则匹配的所以写法才这么奇怪),后面是blog APP下的views.py文件里的index方法url(r'^index/$', 'blog.views.index'),]

    views .py里的index方法

    上面路径里的views.py文件中的index方法是进行控制templete文件夹下的html文件显示的,当url如localhost:8000/index访问时,其实会触发index方法,即

    from blog.models import BlogsPost#引用上面模块就是调用model.py,数据库操作要靠model.pydef index(request):    blog_list = BlogsPost.objects.all()    #这里的index.html就是templete里的    return render_to_response('index.html',{'blog_list':blog_list})

    model .py

    #from django.db import models#引用上面模块是为了操作数据库class BlogsPost(models.Model):    title = models.CharField(max_length = 150)    body = models.TextField()    timestamp = models.DateTimeField()

    templet文件夹

    {% extends "base.html" %}{% block content %}  {% for post in blog_list %}<!-- 这里用到了model.py里的数据库操作获取的数据-->  <h2>{{  post.title }}</h2>  <p>{{ post.timestamp | date:"1,F jS"}}</p>  <p>{{ post.body }}</p>  {% endfor %}{% endblock %}

    上面就是djingio自带的一些语法,这些代码在调用时都会replace成正常的html代码的

第七城市

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台