使用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作用域用法实例详解
Mar 15 Python
Python编程生成随机用户名及密码的方法示例
May 05 Python
用Python将结果保存为xlsx的方法
Jan 28 Python
python redis 删除key脚本的实例
Feb 19 Python
关于python字符串方法分类详解
Aug 20 Python
Python Django 页面上展示固定的页码数实现代码
Aug 21 Python
python之array赋值技巧分享
Nov 28 Python
python str字符串转uuid实例
Mar 03 Python
Python selenium文件上传下载功能代码实例
Apr 13 Python
Python工程师必考的6个经典面试题
Jun 28 Python
django rest framework 自定义返回方式
Jul 12 Python
pytorch 实现变分自动编码器的操作
May 24 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
ThinkPHP模型详解
2015/07/27 PHP
PHP实现的mysql主从数据库状态检测功能示例
2017/07/20 PHP
php中文乱码问题的终极解决方案汇总
2017/08/01 PHP
Lazy Load 延迟加载图片的 jQuery 插件
2010/02/06 Javascript
开发中可能会用到的jQuery小技巧
2014/03/07 Javascript
jQuery在ul中显示某个li索引号的方法
2015/03/17 Javascript
js实现网页抽奖实例
2015/08/05 Javascript
jquery+php实现滚动的数字特效
2015/11/29 Javascript
详解js跨域原理以及2种解决方案
2015/12/09 Javascript
详解vee-validate的使用个人小结
2017/06/07 Javascript
基于 Vue 实现一个酷炫的 menu插件
2017/11/14 Javascript
vue-cli系列之vue-cli-service整体架构浅析
2019/01/14 Javascript
少女风vue组件库的制作全过程
2019/05/15 Javascript
微信小程序可滑动周日历组件使用详解
2019/10/21 Javascript
vue利用全局导航守卫作登录后跳转到未登录前指定页面的实例代码
2020/05/19 Javascript
浅谈JSON5解决了JSON的两大痛点
2020/12/14 Javascript
Vue页面渲染中key的应用实例教程
2021/01/12 Vue.js
python base64 decode incorrect padding错误解决方法
2015/01/08 Python
在Python中处理XML的教程
2015/04/29 Python
用Python的Flask框架结合MySQL写一个内存监控程序
2015/11/07 Python
Python简单实现TCP包发送十六进制数据的方法
2016/04/16 Python
Ubuntu下使用python读取doc和docx文档的内容方法
2018/05/08 Python
解决django服务器重启端口被占用的问题
2019/07/26 Python
python自动识别文本编码格式代码
2019/12/26 Python
h5调用摄像头的实现方法
2016/06/01 HTML / CSS
html5超简单的localStorage实现记住密码的功能实现
2017/09/07 HTML / CSS
新英格兰最大的特色礼品连锁店:The Paper Store
2018/07/23 全球购物
编写类String 的构造函数、析构函数和赋值函数
2012/09/09 面试题
命名空间(namespace)和程序集(Assembly)有什么区别
2015/09/25 面试题
公司综合部的成员自我评价分享
2013/11/05 职场文书
项目投资意向书
2014/04/01 职场文书
计生办班子群众路线教育实践活动个人对照检查材料思想汇报
2014/10/04 职场文书
《家世》读后感:看家训的力量
2019/12/30 职场文书
pycharm无法导入lxml的解决办法
2021/03/31 Python
MySQL令人咋舌的隐式转换
2021/04/05 MySQL
Golang: 内建容器的用法
2021/05/05 Golang