学习目标:django初阶

  • 创建项目
  • 开发服务器
  • 创建投票应用程序
  • 写下你的第一个视图
  • 数据库设置
  • 创建模型
  • 激活模型
  • 使用 API
  • 介绍 Django 管理员

学习内容:

快速安装django:

在此之前,确定已经安装完成python

 pip install Django

查看django的版本号

python -m django --version

创建项目

django-admin satrtproject 项目名称

成功创建

mysite/manage.pymysite/__init__.pysettings.pyurls.pywsgi.py

manage.py:一个命令行实用程序,可让您以各种方式与此 Django 项目进行交互。您可以阅读 django-admin 和 manage.pymanage.py中的所有详细信息。
内部mysite/目录是您项目的实际 Python 包。它的名称是 Python 包名称,您需要使用它来导入其中的任何内容(例如mysite.urls)。
mysite/init.py: 一个空文件,告诉 Python 这个目录应该被认为是一个 Python 包。如果您是 Python 初学者,请阅读官方 Python 文档中有关包的更多信息。
mysite/settings.py:此 Django 项目的设置/配置。 Django 设置会告诉你设置是如何工作的。
mysite/urls.py:这个 Django 项目的 URL 声明;由 Django 驱动的站点的“目录”。您可以在URL dispatcher中阅读有关 URL 的更多信息。
mysite/wsgi.py: 为您的项目提供服务的 WSGI 兼容 Web 服务器的入口点。有关更多详细信息,请参阅如何使用 WSGI进行部署。

开发服务器

python manage.py runserver

创建应用程序

python manage.py startapp 应用程序名称

写出第一个试图view

在views.py中编写

from django.http import HttpResponse
def index(request):

return httpResponse(“Hello,word”)

这是 Django 中最简单的视图。如果想看见效果,我们需要将一个 URL 映射到它——这就是我们需要 URLconf 的原因了。
为了创建 URLconf,请在 polls 目录里新建一个 urls.py 文件。你的应用目录现在看起来应该是这样:

polls/__init__.pyadmin.pyapps.pymigrations/__init__.pymodels.pytests.pyurls.pyviews.py

在 polls/urls.py 中,输入如下代码:

from django.urls import pathfrom . import views
urlpatterns = [path('',views.idnex,name='index'),#这个name是映射到views.index]

下一步是要在根 URLconf 文件中指定我们创建的 polls.urls 模块。在 mysite/urls.py 文件的 urlpatterns 列表里插入一个 include(), 如下:

from django.contrib import admin
from django.urls import include,path
urlpatterns = [path('polls/',include('polls.urls')),path('admin/',admin.site.urls),
]

执行
python manage.py runserver #验证路由是否修改成功

数据库配置

现在打开 项目/settings.py 这是一个包含Django项目设置的python模块

  1. 通常sqlite为默认数据库
  2. 也可以使用自定义数据库(mysql、Oracle…)

sqlite数据库

DATABASES = {'default': {'ENGINE': 'django.db.backends.sqlite3','NAME': 'mydatabase',}
}

Mysql数据库或者其他数据

DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql','NAME': 'mydatabase','USER': 'mydatabaseuser','PASSWORD': 'mypassword','HOST': '127.0.0.1','PORT': '3306',}
}

创建model.py类

通过定义还需要将app名称放入settings.py中

from django.db import modelsclass Question(models.Model):question_text = models.CharField(max_length=200)pub_date = models.DateTimeField('date published')class Choice(models.Model):question = models.ForeignKey(Question, on_delete=models.CASCADE)choice_text = models.CharField(max_length=200)votes = models.IntegerField(default=0)

在文件mysite/settings.py中子INSTALLED_APPS项式路径后,它看起来像这样:

INSTALLED_APPS = [
‘polls.apps.PollsConfig’,
‘django.contrib.admin’,
‘django.contrib.auth’,
‘django.contrib.contenttypes’,
‘django.contrib.sessions’,
‘django.contrib.messages’,
‘django.contrib.staticfiles’,
‘app名称’
]

python manage.py makemigrations polls


API

我们使用这个命令而不是简单的使用“Python” 是因为manage.py会设置DJANGO_SETTINGS_MODULE环境变量,这个路径是 Django 可以根据mysite/settings.py文件来设置 Python 包的导入的。

>>> from polls.models import Choice, Question  # 导入相应的数据类#系统中还没有问题。
>>> Question.objects.all()  #查找到question中的所有数据,返回一个对象
<QuerySet []>#创建一个新的数据
# Support for time zones is enabled in the default settings file, so
# Django expects a datetime with tzinfo for pub_date. Use timezone.now()
# instead of datetime.datetime.now() and it will do the right thing.
>>> from django.utils import timezone
>>> q = Question(question_text="What's new?", pub_date=timezone.now())# Save the object into the database. You have to call save() explicitly.
>>> q.save()# Now it has an ID.
>>> q.id
1# Access model field values via Python attributes.
>>> q.question_text
"What's new?"
>>> q.pub_date
datetime.datetime(2012, 2, 26, 13, 0, 0, 775217, tzinfo=<UTC>)# Change values by changing the attributes, then calling save().
>>> q.question_text = "What's up?"
>>> q.save()# objects.all() displays all the questions in the database.
>>> Question.objects.all()
<QuerySet [<Question: Question object (1)>]>

在model.py中还存在很多内置的方法
例如:

def unicode(self):

return self.username

class Meta():

db_table=“表名”

django入门(超详细)相关推荐

  1. NLP之文本分类实战入门超详细教程

    目录 前言 一.数据加载 1.加载包 2.读取数据 二.文本处理 1.去除无用字符 2.文本分词 3.去除停用词 4.去除低频词 5.划分训练集和测试集 三.把文本转换成向量的形式 1.把文本转换成t ...

  2. discuz插件开发新手入门 超详细[转载]

    作为一个新手,目前也是刚刚玩转discuz的插件功能,好东西不敢独享,就拿出来大家一起分享入门的过程. 现在网上很多关于discuz的插件教程都是很简单的教程,原因可能是这个东西是商业化的东西,本着分 ...

  3. Pandas入门超详细教程,看了超简单

    本文主要是对pandas新手入门详细介绍,通过本文你将系统性了解pandas为何会有数据分析界"瑞士军刀"的盛誉,下面请看内容如下: 01 关于pandas pandas,pyth ...

  4. Django入门超easy系列(一)——— 从一个简单的例子入门

    从一个简单的例子初识Django 当下最火的语言-Python和当下最火的Web开发框架-Django会擦出怎么样的火花!? 前言 我从去年十月份开始跟公司大佬学习Django,在本系列总结自己学习D ...

  5. 倍增算法入门 超详细解答+LCA+RMQ(ST表)+例题剖析

    目录 一.倍增算法 二.倍增算法的应用:求LCA(最近公共祖先)附模板题 三.倍增算法的应用:RMQ 问题(ST表)附模板题 一.倍增算法 要了解倍增之前,强烈建议大家先看一下这位大佬对倍增的解释:[ ...

  6. selenium入门超详细教程——网页自动化操作

    文章目录 简介 一.环境安装 1.selenium安装 2.安装浏览器驱动 2.1 确定浏览器版本 2.2 下载驱动 二.基础用法 1.对页面进行操作 1.1 初始化浏览器对象 1.2 访问页面 1. ...

  7. 倍增算法入门 超详细解答+LCA+RMQ(ST表)+例题剖析

    目录 一.倍增算法 二.倍增算法的应用:求LCA(最近公共祖先)附模板题 三.倍增算法的应用:RMQ 问题(ST表)附模板题 一.倍增算法 要了解倍增之前,强烈建议大家先看一下这位大佬对倍增的解释:[ ...

  8. scrapy爬取豆瓣所有电影信息(新手入门超详细版)

    本次小实验目标就是爬取豆瓣所有的电影,我们以豆瓣的分类页(https://movie.douban.com/tag/#/)作为start_urls,首要任务就是分析当前页面是否为动态加载,何为js动态 ...

  9. SpringMVC V4.1入门超详细解析

    文章目录 概述 1.初识SpringMVC 1.1入门程序 1.1.1导入jar包/配置文件 1.1.2创建ItemController 1.2Springmvc架构 1.2.1架构图 1.2.2组件 ...

最新文章

  1. TensorFlow 输出tensor数据
  2. 在ASP.NET中获取文件属性
  3. MAC + Tomcat——部署Web项目时Tomcat启动成功,但部署的Web项目404错误
  4. python nose测试框架全面介绍十---用例的跳过
  5. 离线安装minikube—1.10.1
  6. 解决android中出现的无法加载library的问题
  7. 关闭word_Word文档如何快速查找?超实用的5个Word技巧教给你
  8. 法布里斯·贝拉:一个人就是一支队伍
  9. 遥感原理与应用_遥感原理与应用考试题库及答案
  10. matlab随机生成点图,matlab随机生成散点图
  11. 小刘同学的第一百五十五篇日记
  12. 别了dvorak!-----论qwert、dvorak布局优劣
  13. MXNet对含隐藏状态的循环神经网络(RNN)的实现
  14. 黑苹果主机z77技嘉wifi主板,
  15. m3u8下载合并图片文件(但实际上还是ts文件)
  16. 【软考 系统架构设计师】计算机组成与体系结构⑥ 流水线
  17. 不知道如何回复审稿人意见?回复模板来了!
  18. 关于“Windows Script Host...”错误
  19. 财务计算机专业英文怎么说,财务与计算机 英文简历模板
  20. hexo的安装配置以及主题更换保姆级教程

热门文章

  1. VisualFreeBasic+Miniblink做浏览器实现js内容替换
  2. 【山东】关于2012年下半年计算机技术与软件专业技术资格(水平)考试有关问题的通知
  3. 毛绒玩具CPC认证,CPSC认证需要怎样申请
  4. 【小沐学Python】Python实现在线电子书(MkDocs + readthedocs + github + Markdown)
  5. vs2010打包发布注意事项
  6. 都2020年了,在校学生还值得继续转行搞AI吗
  7. 黑马——最新大数据视频
  8. 用 Python 进行办公自动化都需要学习什么知识
  9. 鱼C论坛_VIP四号光盘
  10. Windows Server HP 服务器磁盘阵列检测