Django(二)创建app,设置相关后台
location 最后一个文件夹名就是project名,我用了DjangoProject。
Application 是自动加入的APP名字,我用了DjangoTest
1.添加APP
在pycharm的工具栏找到 Tools,点击之后会有“Run manage.py task”选项,点击它之后,在pycharm下面会出现一个输入界面,
在里面输入“startapp appName(你的App名称)”,回车之后就可以在工程下面看到你新建的App了。
命令:startapp Plan
会自动创建目录,文件……
后续文章也主要使用这个名称,不再说明
第一篇文章,我们创建了APP DjangoTest 现在又创建了一个APP Plan.
2.把新建的APP Plan加入APPS列表:
编辑项目setting.py,(DjangoProject/setting.py)
INSTALLED_APPS = 中加入新建的app
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'Plan.apps.PlanConfig', #此行为添加
]
记得最后一个逗号,根据pycharm的提示,很容易写的。
3.设置公用静态路径:
编辑项目setting.py,(DjangoProject/setting.py)最下面一部分
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.10/howto/static-files/
STATIC_URL = '/static/'#URL访问路径 STATICFILES_DIRS = (
os.path.join(BASE_DIR, "static"),#URL对应的路径和URL名称设一致,编写想关代码时提示是正确的
)
这里就是把项目文件夹下的static 变成网络访问的 http://localhost:8000/staitc目录了
本地放在static文件夹下的文件,都可以直接网络访问。
4.创建数据结构,数据模型………………随便你怎么叫吧
编辑 DjangoTest目录下 models.py
注意add_date,是创建时间,mod_date是修改时间,这个是特殊设置,后台也不可以随便改,django默认还不在后台显示。
class Train_plan(models.Model):#车次计划表
add_date = models.DateTimeField('保存日期', default=timezone.now)
mod_date = models.DateTimeField('最后修改日期', auto_now=True)
date =models.DateField('计划日期')
train_name=models.CharField(max_length=16,verbose_name='车次名称')
start_time=models.TimeField('计划开始时间')
end_time=models.TimeField('计划结束时间')
track=models.IntegerField('股道',default='')
plan_end=models.TimeField('图定终到时间')
plan_in=models.TimeField('计划入库时间')
plan_out=models.TimeField('计划出库时间')
plan_start=models.TimeField('图定发车时间')
note=models.TimeField('备注',null=True,blank=True)
class Meta:
verbose_name='车次计划'
verbose_name_plural= '车次计划'
以后会有文章说明数据类型,额外的方法。
运行命令创建数据结构,数据表
makemigrations
migrate
5.注册app到管理界面
编辑app目录下admin.py (DjangoTest/admin.py)
from .models import Train_plan #例程使用
from .models import Carriage_plan #非例程使用
from .models import Carriage_history#非例程使用
class YourAdmin(admin.ModelAdmin):#例程使用
readonly_fields = ('add_date', 'mod_date',)
admin.site.register(Train_plan,YourAdmin)#例程使用
admin.site.register(Carriage_plan,YourAdmin)#非例程使用
admin.site.register(Carriage_history,YourAdmin)#非例程使用
readonly_fields,是把默认后台不会显示的内容以只读形式显示出来。可以给多个表来使用,当然,要有相同的条目。
6.登陆后发现app名字是类名,修改为中文
编辑app目录下apps.py (DjangoTest/app.py)
from django.apps import AppConfig class DjangoTestConfig(AppConfig):
name = 'DjangoTest'
verbose_name = '测试管理'
verbose_name就是别名显示,很多地方都是这么用。
Django(二)创建app,设置相关后台的更多相关文章
- Web框架之Django_01初识(三大主流web框架、Django安装、Django项目创建方式及其相关配置、Django基础三件套:HttpResponse、render、redirect)
摘要: Web框架概述 Django简介 Django项目创建 Django基础必备三件套(HttpResponse.render.redirect) 一.Web框架概述: Python三大主流Web ...
- django-1创建项目创建app设置setting、urls、templates、views等
1. python -m django --version 查看版本 1.11.4 在需要创建项目的目录下执行: 2. django-admin startproject myblog => 创 ...
- django框架创建app及使用、
App 创建一个app : python manage.py startapp app01 admin: from django.contrib import admin # Register you ...
- Django 2 创建app
python manage.py startapp polls 创建model 创建完model以后使用 查看sql python manage.py sql polls 然后使用 python ma ...
- Django创建App报错
在django下创建APP项目时遇到的坑 python manage.py startapp app01 报错内容如下: 解决:找到报错中的文件夹151行删除items(),)中的逗号即可 在命令行下 ...
- Python Django CMDB项目实战之-2创建APP、建模(models.py)、数据库同步、高级URL、前端页面展示数据库中数据
基于之前的项目代码来编写 Python Django CMDB项目实战之-1如何开启一个Django-并设置base页index页文章页面 现在我们修改一个文章列表是从数据库中获取数据, 下面我们就需 ...
- 四、Django设置相关
1.全局设置 setttings文件 import os import sys # Build paths inside the project like this: os.path.join(BAS ...
- 一、数据库表中字段的增删改查,二、路由基础.三、有名无名分组.四、多app共存的路由分配.五、多app共存时模板冲突问题.六、创建app流程.七、路由分发.八、路由别名,九、名称空间.十、反向解析.十一、2.x新特性.十二、自定义转换器
一.数据库表中字段的增删改查 ''' 直接在modules中对字段进行增删改查 然后在tools下点击Run manage.py Task执行makemigrations和migrate 注意在执行字 ...
- Django---静态文件配置,post提交表单的csrf问题(日后细说),创建app子项目和分析其目录,ORM对象关系映射简介,Django操作orm(重点)
Django---静态文件配置,post提交表单的csrf问题(日后细说),创建app子项目和分析其目录,ORM对象关系映射简介,Django操作orm(重点) 一丶Django的静态文件配置 #we ...
随机推荐
- linux下如何源码安装expect
1.作用 自动交互.比如如果用ssh登陆服务器,每次都输入密码,然而你觉得麻烦,那你就可以使用expect来做自动交互,这样的话就不用每次都输入密码 2.依赖 依赖tcl 3.获取源码 wget ht ...
- 【第十五章】 springboot + pojo默认值设置
我们有时需要给POJO设置默认值 pojo设置(推荐) 1.User package com.xxx.firstboot.domain; import lombok.Getter; import lo ...
- HDU 1171 Big Event in HDU(0-1背包)
http://acm.hdu.edu.cn/showproblem.php?pid=1171 题意:给出一系列的价值,需要平分,并且尽量接近. 思路:0—1背包问题. 0-1背包问题也就是有n种物品且 ...
- 初探 Yii2 的测试模式 index-test.php
有没有发现高级版每个应用的 web 目录下有两个入口文件,一个index.php 一个 index-test.php通过init.bat可以切换到调试模式和产品模式,这两个模式相信同学们都很熟悉了,那 ...
- Nginx 随笔
使用包管理工具安装nginx Linux(基于deb) sudo apt-get install nginx Linux(基于rpm) sudo yum install nginx FreeBSD s ...
- MySQL数据库调优技巧
原文链接:https://m.aliyun.com/bbs/read/300762.html MySQL是一个功能强大的开源数据库.随着越来越多的数据库驱动的应用程序,人们一直在推动MySQL发展到它 ...
- ubuntu16.04, git 的配置
1.下载git:sudo apt-get install git 2.生成公钥:ssh-keygen -t rsa -C '你的邮箱' ,不停回车即可 3. mkdir test cd te ...
- 退出shell 脚本
#!/bin/bash export TOP_PID=$$ trap 'exit 1' TERM exit_script(){ kill -s TERM $TOP_PID } echo "b ...
- Linux更改主机名
1.临时 # hostname newhostname 2.修改/etc/hostname文件,需重启 # vim /etc/hostname 3.查看 # hostname Ubuntu18 # h ...
- js 中的几个假值
1. 使用场景 if分支语句 / 短路语句while循环语句for里的第二个语句 2. 6个假值 (都属于 原始类型数据的一部分内容,非原始类型即对象都是真值,如:对象.数组.正则.函数 . ...