怎样搭建Django服务器环境

怎样搭建Django服务器环境,第1张

1首先安装python,配置环境变量path:C:\Python27;C:\Python27\Scripts;

2去django官网下载压缩包Django-183targz,然后解压在C盘,输入以下命令:

cd   C:\Django-183

python  setuppy   install

命令运行后,Django环境就安装好了,然后配置环境变量path:C:\Python27\Lib\site-packages\Django-183-py27egg\django\bin

3在命令终端输入以下命令导入并检查django安装情况:

python

>>>import django

>>>djangoVERSION

4创建一个Django工程

django-admin  startproject  cms678(工程名)

这样在用户目录下就会产生一个cms678的工程文件夹。  

managepy:可以在命令行下管理这个项目

__init__py:将这个项目目录作为Python的一个包。

settingspy: 项目的配置文件。

urlspy:定义了Django项目中的URL路由表,指定了URL与被调用类之间的对应关系。

wsgipy: 这个是Django14中新添加的默认Web服务器网关接口。

命令窗口切换到cms678文件夹,然后运行命令:python managepy runserver,启动当前目录工程。

浏览器输入>

到此基本 *** 作就结束啦 :-)

Django最大的不足在于其落后的前端工具链。现在前端开发几乎必备的包管理器(例如npm,yarn)以及工程化必备的webpack工具链,Django却不支持。Django开发的工作流中,后端的包管理可以用pip,而前端的包只能手动管理。所以,我最近的工程项目中,已不再使用Django提供的前端模块,仅仅把它当作API服务器。这的确很遗憾,因为Django的template引擎也有一些易用的特性,如此抛弃,真的有点不舍。那么有没有可能结合二者的优点呢?

经过一番探索,网上给出最靠谱的答案就是利用 django-webpack-loader 和 webpack-bundle-tracker 这两个插件。其原理是 webpack-bundle-tracker 能够输出webpack的编译过程以及结果。 django-webpack-loader 插件则是Django和webpack之间的桥梁,利用上面的编译结果,自动加载webpack打包后的静态文件。

需要用webpack生成的静态文件时,就在template上面使用下面一段模板语言,能够自动完成静态文件的注入。

简单的试了试,应该能够达到我想要的效果,明天有时间再研究。

1、首先app后台和语言,框架没有关系,适合不适合要看开发者对这个东西的熟悉程度。
2、django作为python中一个比较完整的框架,包括一个完整项目开发所需的大部分功能,所以使用django可以快速完成项目,当然也包括app后台服务器代码。

随着网站运作,难免有些时候需要上传文件。上传文件自然是上传到网站所在的服务器,日积月累,慢慢地网站存储空间越来越少。而且网站迁移和备份都不方便,使用这些资源时也占用大量服务器流量。

较好的解决方案是使用第三方存储服务器,例如七牛、阿里云OSS、亚马逊S3等。将文件都放到这些存储服务器,可以减少服务器负担。服务器只剩下必要的静态文件和代码。

以阿里云OSS为例,讲解如何使用第三方存储服务器。(刚好最近用到这个,而且Django有其他人写好的第三方库)

首先,需要拥有OSS。这个去阿里云购买即可。购买之后可得到密钥等一系列信息。

接着,安装oss2库,该库是Python对应oss的 *** 作库。

再安装或下载Django OSS的Storage库。这些库是继承Django的Storage类,并重写相关方法。Django的Stroage是管理上传文件的存储。如何自定义Storage可参考Django官方文档。

执行如下命令,安装Django-Aliyun-OSS2-Storage:

也可以不用pip安装,打开该第三方库的Github,下载源码到本地。这里我需要修改部分代码,所以直接下载把整个包放到Django项目的根目录(也可其他位置)。

安装下载完成之后,配置Django的Settings,添加如下设置:

另外,还有两个对应参数需要注意一下,MEDIA_ROOT和MEDIA_URL。

MEDIA_ROOT是媒体文件的上传位置根目录,由于设置了BUCKET_NAME,一般在这个bucket中。可以设置为空字符串。

文件自然上传到Django模版的FileField字段设置的upload_to位置。

MEDIA_URL是获取媒体文件的链接前缀,可根据自己的oss文件链接位置添加。

由于上传的文件需要开放被用户下载,BUCKET_ACL_TYPE设置为公共的。若你的静态文件也需要上传到OSS中,设置如下:

设置无误后,重启Django即可使用。上传文件将自动上传到OSS中。

上面提到我要修改里面的源码。因为发现上传的文件在下载时的文件名是一串乱码,不是上传时的文件名。这个需要设置一些header信息,可参考OSS的SDK文档。该header需要在上传文件时就提交,而上面的django-aliyun-oss2-storage在上传文件时没有写入header信息。

打开该包的源码文件backendspy,找到AliyunBaseStorage类的_save方法。修改如下:

这样设置,点击文件链接,即可下载并且下载文件名是上传的文件名。若你不是什么类型文件都需要这么处理,可以判断filename的后缀名加以处理。

Python38安装配置Django环境(上)

1、CMD查看python版本

2、CMD查看pip版本

3、pip 安装Django,默认Django3

升级pip

4、查看Django版本

5、安装mysql

6、查看mysql版本

7、建立Django文件夹并进入,

8、开始一个django项目

9、运行服务器,测试Django项目

10、使用地址访问 >

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/12891894.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-28
下一篇 2023-05-28

发表评论

登录后才能评论

评论列表(0条)

保存