win10下Django初学笔记

摘要:最近开始接触Django框架,对于这个MTV模式的high-level Python Web 框架,我得到不少收获,现在整理下初入门的学习笔记,供初学者参考。

 
 

1.简单理解Django

     Django是一个Python Web 框架,它可以让你在更短的时间内,写更少的代码,编写出一个让人满意的web项目。另外Django采用的是MTV架构,即model-template-view(模型-模板-视图)。

           model: 负责业务对象与数据库的关系映射

           template: 负责渲染需要展示给客户的页面

           view: 负责业务逻辑,并在必要的时候调用model和template

    可以这样简单理解,浏览器发送一个请求到web服务器,服务器通过URL选中一个view进行处理。而view则可以通过调用model(模板)取得底层所需数据,并将这些所需数据传给template(模板)进行页面渲染,最后返回给view一个美观的web页面, 再展示出来。

           (更深理解请读者自寻查阅相关资料,django官网https://www.djangoproject.com/)

2.win10下Django安装

    安装Django的前提条件是你的电脑已经安装了python,建议读者安装Python3。

    如果电脑已安装好python,我们就可以在命令行里用pip 进行安装了。

   一般安装python之后,都会默认安装上pip包。如果不清楚自己电脑上是否安装了pip包,可以通过如下语句查看:

     (1)打开命令行

     (2)pip list

        (3)按Enter

      

        可以看到pip(9.0.3) ——注:这是本人电脑上的pip版本号,你电脑上的版本可能不一样。

    如果你的命令行里没有出现类似上面的记录,而是:pip不是内部或外部命令,也不是可运行的程序或批处理文件。

     那么你就得设置一下环境变量,将pip.exe所在的目录放到PATH里(不清楚的自行百度)

 

     确定cmd里的pip可用,我们便可以写下语句“pip install diango进行安装。

       这条语句执行后,我们的电脑会自动安装最新版的django,如果你想安装指定的版本(如稳定版1.11),则这样写,“pip install diango==1.11

检查是否安装成功,可以在cmd里输入:

1.      python

2.      import django

3.      django.get_version()

 

如果出现python不是内部或外部命令……那么也是环境变量没有设置好!

3.创建简单项目
   cmd里输入 django-admin.pystartproject SMSystem

   按下回车,即可创建一个项目。这里注意,如果你想将项目创建在指定的文件夹下,则需要跳转到指定目录下。如下,
  

   我是跳转到Ddjango_project文件夹里创建SMSytem项目的。

   创建完成后,就意味着有一个网站的基本框架了。可以下述命令,访问网站:

python manage.py runserver

  

    

   根据提示的信息,进入http://127.0.0.1:8000/访问:

   

4.创建应用

       项目建好,网站也有,接下来就是实现网站的具体功能,这时我们就需要创建一个个应用(app)。

       Ctrl+c 停掉刚才的服务。

       继续写,python manage.py startapp SInformation

       创建成功后,你的项目文件夹下应该类似于这样了。

  

5.配置

     可以下载一个免费的社区版pycharm打开你的项目文件。进入SMSystem/settings.py,我们会看到一行行的代码。

1、 DEBUG = True #在开发过程中设置为True,如果部署到对外服务器上时,则要修改为False,从而避免暴露内部信息。

2、ALLOWED_HOSTS = [] #可以在括号里填写域名,以便他人访问。

3、INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'SInformation',
]  #这是一个很重要的配置项,所有的应用只有填写到这里才有效,比如填写的 'SInformation'。

4、TEMPLATES = [     {         'BACKEND': 'django.template.backends.django.DjangoTemplates',         'DIRS': [os.path.join(BASE_DIR,'templates')],         'APP_DIRS': False,         'OPTIONS': {             'context_processors': [                 'django.template.context_processors.debug',                 'django.template.context_processors.request',                 'django.contrib.auth.context_processors.auth',                 'django.contrib.messages.context_processors.messages',             ],         },     }, ] #这里是配置模板的地方,如果你建立的一个templates项,就需要在这里配置路径,如上。 5、DATABASES = {     'default': {         'ENGINE': 'django.db.backends.sqlite3',         'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),     } } #配置数据库的地方,默认的sqlite3--python自带的数据库。 6、
LANGUAGE_CODE #设置项目语言。

如果想将语言设置为中文,可以这么改:
 
   
LANGUAGE_CODE = 'zh-Hans' TIME_ZONE = 'Asia/Shanghai'

6.运行

在简单了解了django及一些内部后,我们可以尝试在之前的http://127.0.0.1:8000/网页里显示一个“hello world!”
(1)首先在setting.py中激活你建立的应用。
   INSTALLED_APPS = [
      'django.contrib.admin',
      'django.contrib.auth',
      'django.contrib.contenttypes',
      'django.contrib.sessions',
      'django.contrib.messages',
      'django.contrib.staticfiles',
      'SInformation',
   ]

(2)配置URL
   这样改写在SMSystem下的urls。py文件:
     from django.conf.urls import url,include
     from django.contrib import admin

      urlpatterns = [
           url(r'^admin/', admin.site.urls),
           url(r'^', include('SInformation.urls')),
      ]
然后在SInformation包下也新建一个urls.py文件,填写内容如下:
from django.conf.urls import url
from . import views

urlpatterns = [
    url(r'^$',views.index), 
]
这时我们的views.py文件里是没有index这个函数的,要自己写一个index。
from django.http import HttpResponse

def index(request):
    return  HttpResponse("hello world!")
最后在cmd项目文件SMSystem下运行python manage.py runserver , 打开 http://127.0.0.1:8000/ 就可以看到如下画面:

 
   
 
   


 
   
 
   
 
   
 
   
 
   
 
   
 
   
 
   
 
   
 
   
 
   
 
   
 
   










猜你喜欢

转载自blog.csdn.net/weixin_40127083/article/details/80501291
今日推荐