使用PyCharm创建Django项目及基本配置详解


Posted in Python onOctober 24, 2018

pycharm是个很不错的python开发工具,大大缩短了python项目的创建时间以及调试时间

在使用python写脚本一段时间后,想尝试使用Django来编写一个python项目,现做以下记录备忘:

1、创建项目

使用PyCharm创建Django项目及基本配置详解

如果本地没有安装与所选python版本对应Django版本,pycharm会自动下载相应的版本:

使用PyCharm创建Django项目及基本配置详解

创建后运行项目,默认页面为http://127.0.0.1:8000/,打开后:

使用PyCharm创建Django项目及基本配置详解

出现上面的页面,则正面项目创建成功

目录结构:

使用PyCharm创建Django项目及基本配置详解

2、创建APP

在Django项目中可以包含多个APP,相当于一个大型项目中的分系统、子模块、功能部件等,相互之间比较独立,但也有联系,所有APP共享项目资源

使用PyCharm创建Django项目及基本配置详解

输入:python manage.py startapp myapp

生成myapp文件夹

3、视图和url配置

myapp/views.py文件代码:

from django.http import HttpResponse     #需要导入HttpResponse模块

def hello(request):             #request参数必须有,名字类似self的默认规则,可以修改,它封装了用户请求的所有内容
  return HttpResponse("Hello world ! ")  #不能直接字符串,必须是由这个类封装,此为Django规则

testDjango/urls.py文件代码:

from myapp import views           #首先需要导入对应APP的views

urlpatterns = [
  url(r'^admin/', admin.site.urls),    #admin后台路由
  url(r'^hello$', views.hello),      #你定义的路由,第一个参数为引号中的正则表达式,第二个参数业务逻辑函数(当前为views中的hello函数)
]

运行项目:

命令行的方式是:python manage.py runserver 127.0.0.1:8000

但是在pycharm中可以使用如下方法:

使用PyCharm创建Django项目及基本配置详解

使用PyCharm创建Django项目及基本配置详解

使用PyCharm创建Django项目及基本配置详解

使用PyCharm创建Django项目及基本配置详解

4、Django模板

修改views文件:

def hello(request):
  # return HttpResponse("Hello world ! ")
  context = {}
  context['hello'] = 'Hello World!'        #数据绑定
  return render(request, 'hello.html', context)  #将绑定的数据传入前台

被继承的模板:

{#base.html#}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>模板测试</title>
</head>
<body>
  <h1>{{ hello }}</h1>
  <p>Django模板测试</p>
  {% block mainbody %}
    <p>original</p>
  {% endblock %}
</body>
</html>

hello.html 中继承 base.html,并替换特定 block,hello.html 修改后的代码如下:

{#hello.html#}
{% extends "base.html" %}
 
{% block mainbody %}<p>继承了 base.html 文件</p>
{% endblock %}

重新访问地址 http://127.0.0.1:8000/hello,输出结果如下:

使用PyCharm创建Django项目及基本配置详解

5、引入静态文件

需要将一些静态资源引入项目,新建一个static目录,可以将js、css等文件放入这个目录中:

使用PyCharm创建Django项目及基本配置详解

需要让Django找到这个目录,需要在setting文件中进行配置:

使用PyCharm创建Django项目及基本配置详解

在html文件中引入静态资源:

{% load staticfiles %}
{#base.html#}
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <link rel="stylesheet" href="{% static 'css/mypage.css' %}" rel="external nofollow" >
  <script src="{% static 'js/jquery-1.11.1.js' %}"></script>
<title>模板测试</title>
</head>
  <body>
    <h1>{{ hello }}</h1>
    <p>Django模板测试</p>
    {% block mainbody %}
      <p>original</p>
    {% endblock %}
  </body>
</html>

第一行引入静态文件路径{% load staticfiles %},在<head>...</head>里加入CSS网链和js文件

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
跟老齐学Python之眼花缭乱的运算符
Sep 14 Python
总结python实现父类调用两种方法的不同
Jan 15 Python
Python 实现使用dict 创建二维数据、DataFrame
Apr 13 Python
linux下python使用sendmail发送邮件
May 22 Python
使用python3实现操作串口详解
Jan 01 Python
深入了解和应用Python 装饰器 @decorator
Apr 02 Python
简单了解python高阶函数map/reduce
Jun 28 Python
Python中的正则表达式与JSON数据交换格式
Jul 03 Python
python获取array中指定元素的示例
Nov 26 Python
使用python 将图片复制到系统剪贴中
Dec 13 Python
使用Tensorflow实现可视化中间层和卷积层
Jan 24 Python
tensorflow模型转ncnn的操作方式
May 25 Python
python实现在图片上画特定大小角度矩形框
Oct 24 #Python
python多进程使用及线程池的使用方法代码详解
Oct 24 #Python
python实现图片筛选程序
Oct 24 #Python
用pycharm开发django项目示例代码
Oct 24 #Python
使用python采集脚本之家电子书资源并自动下载到本地的实例脚本
Oct 23 #Python
Python读取mat文件,并保存为pickle格式的方法
Oct 23 #Python
Python读取系统文件夹内所有文件并统计数量的方法
Oct 23 #Python
You might like
自己动手做一个SQL解释器
2006/10/09 PHP
php中如何判断一个网页请求是ajax请求还是普通请求
2013/08/10 PHP
php5.4以下版本json不支持不转义内容中文的解决方法
2015/01/13 PHP
实例介绍PHP删除数组中的重复元素
2019/03/03 PHP
javascript编程起步(第六课)
2007/01/10 Javascript
jQuery 入门讲解1
2009/04/15 Javascript
Jquery Change与bind事件代码
2011/09/29 Javascript
js hover 定时器(实例代码)
2013/11/12 Javascript
写JQuery插件的基本知识
2013/11/25 Javascript
通过url查找a元素并点击
2014/04/09 Javascript
深入学习JavaScript中的原型prototype
2015/08/13 Javascript
BootStrap+Angularjs+NgDialog实现模式对话框
2016/08/24 Javascript
表单input项使用label同时引用Bootstrap库导致input点击效果区增大问题
2016/10/11 Javascript
Nodejs之TCP服务端与客户端聊天程序详解
2017/07/07 NodeJs
详解Vue + Vuex 如何使用 vm.$nextTick
2017/11/20 Javascript
webpack dll打包重复问题优化的解决
2018/10/10 Javascript
vue路由--网站导航功能详解
2019/03/29 Javascript
JavaScript制作3D旋转相册
2020/08/02 Javascript
微信小程序使用 vant Dialog组件的正确方式
2020/02/21 Javascript
vue实现登录、注册、退出、跳转等功能
2020/12/23 Vue.js
[45:38]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#1Liquid VS Alliance第一局
2016/03/02 DOTA
Python中使用logging模块代替print(logging简明指南)
2014/07/09 Python
Python 26进制计算实现方法
2015/05/28 Python
举例讲解Python中的Null模式与桥接模式编程
2016/02/02 Python
Django生成PDF文档显示网页上以及PDF中文显示乱码的解决方法
2019/12/17 Python
Python sqlite3查询操作过程解析
2020/02/20 Python
Python使用for生成列表实现过程解析
2020/09/22 Python
H5最强接口之canvas实现动态图形功能
2019/05/31 HTML / CSS
生产内勤岗位职责
2013/12/07 职场文书
交通安全演讲稿
2014/01/07 职场文书
大学生关于奋斗的演讲稿
2014/01/09 职场文书
《莫泊桑拜师》教学反思
2014/04/23 职场文书
推广普通话演讲稿
2014/05/23 职场文书
客户经理岗位职责大全
2015/04/09 职场文书
工作感想范文
2015/08/07 职场文书
python之np.argmax()及对axis=0或者1的理解
2021/06/02 Python