美文网首页
python_django配置

python_django配置

作者: Pretty_Boy | 来源:发表于2018-09-04 14:49 被阅读20次

1. django 安装
默认大家装有python
我机子上自带python2.7
所以下载了django1.11.15版本
下载后,随意解压到某个文件夹

// 完成后验证是否成功
// python shell 下输入
import django
print(django.get_version())

// 或者命令行直接输入
python -m django --version

2. django 创建项目及app

  django-admin startproject mysite
项目目录

mysite/settings.py 是整个项目的配置文件
mysite/urls.py 是整个项目的路由文件
随后执行

python manage.py startapp polls  // 创建一个app名为polls
App的目录结构

polls/models.py 是当前app所对应的数据表结构
polls/views.py 是当前app所对应的页面逻辑
创建一个polls/urls.py 是当前app所对应的路由文件
更改mysite/urls.py,polls/urls.py使app的路由文件生效

mysite/urls.py
  from django.contrib import admin
  from django.urls import include, path

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

  urlpatterns = [
    path('', views.index, name='index'),
  ]

在urls.py中配置,当路由匹配到之后去执行什么方法
在polls/urls.py 中 匹配到''后执行在views.py中的index方法

注意: 主路由匹配从mysite/urls.py开始,匹配一个将减去一部分, 如上配置当访问localhost:8000/polls/时,先匹配到mysite/urls.py的 polls/ 随后将路由丢给polls/urls.py。此时url被截断为‘’,然后匹配''成功调用views.index的方法

polls/views.py 
  def index(request):
    # 可以在这里进行对数据库的操作
    return HttpResponse("Hello, world. You're at the CRUD index.")

在settings.py中注册app,否则之前在polls写的代码不会生效

mysite/settings.py 
  INSTALLED_APPS = [
    ... ,
    'polls.app.PollsConfig',
    ...
  ]

编写polls/models.py

polls/models.py
  from django.db import models
  # 定义数据字段时,无需定义id自增,django在应用时 会自动添加
  class Question(models.Model):
    question_text = models.CharField(max_length=200)
    pub_date = models.DateTimeField('date published')

完成models的定义后,需要使其在数据库中生效

python manage.py makemigrations polls  // 告诉django Models已改变
python manage.py sqlmigrate polls 0001 // 查看即将产生的sql语句
python manage.py migrate  // 使已改变的Models应用到数据库

此时无论用什么工具查看你的数据时,会有默认生成的各种表,以及刚刚在Models中定义的表。

这里注意一个坑,如果你用的sqlite3, 想要运行查看sqlite3中的表时, 需要将db.sqlite3的绝对路径写入,否则无数据。

数据库操作: 表名.objects.方法名()
Question.objects.get
注意: 这里操作得到的结果为Query Set类型 或Dict类型 ,如果需要对象的话 请使用序列化方法serializers. serialize()

最后运行命令,跑起服务

python manage.py runserver  // 默认为8000端口 

其实到这里服务就可以跑通了

由于Django自身提供了Admin用户,及操作。

 python manage.py createsuperuser  // 使用命令创建一个超级用户

然后启动服务器后访问 localhost:8000/admin 即可登陆站点管理

然后在你的app中的admin.py中将models进行注册,然后就可以在站点管理中,可视化的管理该表及其表中数据

polls/admin.py
  from django.contrib import admin
  from .models import Question
  admin.site.register(Question)
站点管理

附注:

  1. App/models.py创建字段时 所对应的字段类型
分类 模型属性类型 mysql数据库类型
布尔 BooleanField tinyint
Null BooleanField tinyint
字符 CharField varchar
TextField longtext
数字 IntegerField int
DecimalField decimal
FloatField double
日期和时间 DateField date
TimeField time
DateTimeField datetime
文件 FileField varchar
ImageField varchar

各种类型定义时需要传指定的参数,具体参数请自行百度

相关文章

  • python_django配置

    1. django 安装默认大家装有python我机子上自带python2.7所以下载了django1.11.15...

  • python_Django 的url(二)

    一、案例 djongo 的url传递,先通过网页输入的网址/a标签的网址,回传到urls处理,下发的对应的方法和类...

  • python_Django简单的登录页面

    一、命题 是做一个有技术的黑盒测试,还是做一个黑盒测试,这个是一个为了带Django初学者更容易认识这个框架的小例...

  • Kafka常用资料

    配置大全 Broker配置Topic配置生产者配置消费者配置Stream配置Connect配置AdminClien...

  • 升级hue需要配置的模块

    Sentry配置 hue配置 hive配置 HDFS配置

  • Openstack学习笔记(二):基础配置

    基础服务配置 基础服务配置主要分为以下几步: 网络配置 配置yum源 配置主机名 SELINUX配置 NTP配置 ...

  • thinkphp5学习笔记(二)配置文件

    配置文件 配置文件格式 场景配置 模块配置 加载其他位置的配置文件 如何正确读取配置项 动态配置 如何正确设置配置...

  • 框架代码学习

    web.xml配置 数据库配置 webservice配置 mvc配置 orm配置 菜单和权限配置 mvc、orm、...

  • 微信小程序JSON配置

    全局配置 ( app.json ) 配置页面文件 配置navigationBar样式 配置tabBar 页面配置 ...

  • ceph部署

    初始配置 配置源 安装 OSD配置 cgr配置 验证:

网友评论

      本文标题:python_django配置

      本文链接:https://www.haomeiwen.com/subject/ukqanxtx.html