• Django第一步


    引文:http://blog.csdn.net/thinkinside/article/details/7218340?reload

    对于一个web框架,掌握了三部分的内容,就可以说是迈出了第一步。

    1. 准备开发环境

    2. 创建一个工程,并运行

    3. 开发hello world应用

    1. 准备环境

        首先应该是安装python和django。这点官方网站有很详细的说明,网上也有很多教程,这里就不再重复了,只是表达一个对操作系统的观点:

              Mac OS:对程序员和用户都很友好
              Linux:    对程序员很友好
              Widows:对用户貌似友好
        到底使用哪个操作系统,仁者见仁。

        

       然后是开发工具的选择。建议抛弃IDE,使用一个好的文本编辑器。强烈推荐vim。但如果你选择Emacs,我无话可说。

    2. 创建工程         

         Django作为一个web框架,第一步应该是能够在浏览器中看到页面。如果已经安装好环境的话。

         首先创建工程:django-admin.py startproject depot,即开始创建名为depot的工程。

         与rails相比,过程很安静,结果很干净。如下:

          depot/
                 __init__.py
                 manage.py
                 settings.py
                 urls.py
    这几个文件的作用如下:

         _init__.py :Python的模块定义文件。 这是一个空文件,一般你不需要修改它。
         manage.py :一个命令行工具,生成这个文件仅仅是为了方便。可以通过python manage.py help 查看该工具的功能。完全不需要编辑这个文件。

         settings.py :该 Django 项目的设置或配置。 
         urls.py:Django项目的URL设置。 
    与rails不同,django初始工程的文件很少,可以很容易地阅读所有的代码。但这些文件已经构成了一个可运行的Django应用。

    进入工程目录并运行该工程:

    cd depot/
    python manage.py runserver

    可以看到一些提示信息:

    Validating models...

    0 errors found
    Django version 1.3, using settings 'depot.settings'
    Development server is running at http://127.0.0.1:8000/
    Quit the server with CONTROL-C.
    [29/Jan/2012 02:09:17] "GET / HTTP/1.1" 200 2049

    此时web server(开发环境!)已经运行了,用浏览器访问http://127.0.0.1:8000/,可以看到如下的界面:



    说明Django已经开始工作了。

    3. hello Django!

           与rails不同,django不需要生成controller,helper, view 等等一大堆文件,要实现一个hello程序,只需要几行代码。
           Django Web应用中通常包含URLconf, view, template, model 四个部分(参考《URLconf+MTV:Django眼中的MVC》)。但这些部分不是完全必需的。比如我们要实现一个最简单的 "hello, Django!", 只需要定义URLconf和view即可。
          

           让我们把“需求”明确一下,hello,Django!实现如下功能:在浏览器中输入http://127.0.0.1:8000/hello, 显示“hello Django!”。


          首先要实现一个视图(view) 来响应请求。在Django中视图是一个函数,该函数接受一个HttpRequest参数,并返回一个HttpResponse。我们可以在任何地方定义这个函数,但通常会放在Django app 的 views.py 文件中。在hello,Django中我们不需要创建一个Django app(因为不需要model),所以可以在project 目录中创建一个view.py 文件,并定义hello(request)视图函数:

    depot/views.py:

    [python] view plaincopy
     
    1. from django.http import HttpResponse  
    2.   
    3. def hello(request):  
    4.     return HttpResponse("hello, Django!")  


    接下来是将前面定义的URL 映射到 这个视图函数。这是由URLconf完成的。URLconf的本质是 URL 模式以及要为该 URL 模式调用的视图函数之间的映射表。
    打开生成的urls.py文件,先在文件前面import刚才创建的view,然后在tuple类型的变量urlpatterns中加入hello的映射关系:

    [python] view plaincopy
     
    1. from django.conf.urls.defaults import patterns, include, url  
    2. from depot.views import hello  
    3.   
    4. urlpatterns = patterns('',  
    5.     url(r'^hello/$', hello),  
    6. )  

     
    此时访问 http:/127.0.0.1:8000/hello, 将会显示 hello, Django!


    URLconf理解起来也很容易,即 urlpatterns中的每一项是一个二元组(正则表达式,视图函数)。当Django 接收到HTTP请求的时候,从urlpatterns中找到匹配的表达式,并将请求发生给对应的视图函数,最后视图函数返回一个HTTP响应,交给Django处理。如此而已。

    至此,Django的第一步已经迈出,你至少已经可以开始CGI风格的web开发了。

  • 相关阅读:
    .NET 云原生架构师训练营(权限系统 代码实现 Identity)学习笔记
    .NET 云原生架构师训练营(权限系统 系统演示 EntityAccess)学习笔记
    .NET 云原生架构师训练营(权限系统 代码实现 Store.EntityFramework)学习笔记
    【译】.NET 6 网络改进
    【译】.NET 7 预览版 1 中的 ASP.NET Core 更新
    .NET 云原生架构师训练营(权限系统 代码实现 EntityAccess)学习笔记
    【译】C# 11 特性的早期预览
    .NET 云原生架构师训练营(权限系统 代码实现 ActionAccess)学习笔记
    .NET 云原生架构师训练营(权限系统 代码实现 WebApplication)学习笔记
    .NET 云原生架构师训练营(权限系统 RGCA 开发任务)学习笔记
  • 原文地址:https://www.cnblogs.com/michaely/p/3340093.html
Copyright © 2020-2023  润新知