跟大妈学Django Part - 2 (Django入门续集2)

本文介绍了如何建立Django项目,包括使用Heroku和AWS S3进行托管。详细讲解了安装Gunicorn、设置PostgreSQL、创建S3 bucket以及配置CORS和Bucket policy的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

建立Django项目

上次简单的说了一下如何在Github上建Repository(档)。还给Project起了个很俗的名字叫how do you do (自己都有点被恶心到,但是文化水平有限,实在想不出高大上的名字来)。今天就开始正式搞起Django吧。搞Django前要想一下,后期可能会用上的。。。er 。。。cloud-based hosting platform (Google翻译=基于云的托管平台,对吗?我的理解就是一些保存code的平台,麻烦的是,各种平台保存的东西还不一样,而且,竟然,都要开始收费了。)

我们学校一般建议用Heroku去保存代码,可是这平台因为最近的一次事件开始升级了,(如果我没有理解错误的话,有人利用他们的平台进行不合法的活动。 有兴趣的话,可以读读这些文章停止免费相关文章链接/英文  停止免费相关文章链接/中文 事件相关内容/中文)11月28号开始,没免费的午餐咯!至于CSS,图片之类的,近期介绍了AWS,亚马逊的Amazon Web Service。图片类型的,还可以用Cloudinary

建立Django

接下来是建立Django,在Django里建立App,连接托管平台和上传至托管平台。这是推荐操作,所以,按部就班咯。加油!💪🏻

"Gunicorn is the server that we're going to use to run Django on Heroku" 

哦豁,Gunicorn 原来是一个服务器,门外汉学码就这样,啥都不懂,慢慢来吧。

相关文档

如何安装

先点击Gitpod绿色按钮,进入 Gitpod页面。刚开始有点慢耶,耐心等待。。。

Gitpod Workspace其实不用每次都打开,我一般都等超时了,在直接进去就行。原因是哈,超级麻烦的!重新进去的话,好多装过的东西有得重装一边,或者是,之前没有push,也就是没有及时保存到Github的代码,就没了,没了!所以,这个不是情非得已,就别乱点了,Workspace 超时了,在进去就行。

请输入以下代码安装gunicorn

pip install gunicorn

显示安装完毕

请输入以下代码安装Library PostgreSQLD

pip3 install dj_database_url psycopg2

显示安装完毕

把安装过的插件保存到一个叫requirements.txt的文件,这样,Django就知道,通过什么插件去运行了。

pip3 freeze --local > requirements.txt

如图

这次还是用AWS去保存图片和CSS之类的一些static files吧,没有注册的可以自己注册,有免费的项目,但是注册的时候,还是要提供付费方式的(我这算不算是在打广告?他们真应该给我点辛苦费)。我已经有了,如何注册我就不分享了,自己摸一摸,那个摸一摸哈。我们主要用一个叫S3的服务。

 没有用过这个的,得自己找找。

点进去了以后,建立新的bucket。这个将会存储信息的小桶。

一般建议设定和Heroku或者项目一样的名字(项目听起来好飘哦,有点心虚) 然后,你在什么区域就选择什么区域就好了。我在EU爱尔兰,所以,选了EU Ireland。

然后选择

然后反选Block all public access,因为我还是要给公众看的,再就是确认我知道这个小桶是公开的就好了。

 嘿!竟然有人取一样的名字!那我得换咧。 

换成了hdyd,哇哈哈哈,创建完毕

找到static website hosting -> enable -> 输入index.html ->输入error.html ,如图

 之后,找到permission -> Cross-origin resource sharing (CORS), 点开edit,添加以下代码

[
  {
    "AllowedHeaders": [
      "Authorization"
  ],
  "AllowedMethods": [
    "GET"
  ],
  "AllowedOrigins": [
    "*"
  ],
  "ExposeHeaders": [ ]
  }
]

如图

然后找到Bucket policy,编辑,生成条款。 注意,这里有个Bucket ARN,后面会用到。

 

选择S3 Bucket Policy -> Allow -> * -> GetObject -> 然后放自己的Bucket ARN -> 添加 

 点生成以后,把代码复制到Bucket policy editor(编辑器)里,如图:

在保存之前,在resource,ARN后面添加/*

"Resource": "你的ARN+斜杠星号是一定要加的/*"

 

 Permission -> Access control list (ACL) 选择everyone (Public access),点确认,保存。

上面设置完毕了以后,建立连接。回到主业找到IAM。

 建立一个群组给User

Create生成条款 -> JSON -> import managed policy -> 搜索S3 -> 选择AmazonS3FullAccess,然后通过刚才生成的条款,赋予User权限去浏览文档。

 

因为实际上我们只希望公开hdyd的小桶,而不是其他的文档,因此,我们还要指定公开的小桶。再次复制hdyd的ARN,记得加 /* 斜杠和星号

 

狂奔到Review Policy , 给个名字,解释一下是什么东东,终于能保存了。

 

条款生成完毕。

  接下来就是把这个条款赋予我们建立的group。User groups -> Manage-hdyd -> permission -> add permission -> attach policy, 然后贴上。

 

 然后group的权限就算是完了。

 

现在要做User的 😭 。 User -> Add User -> 

一直点到后面,会生成一个CSV的文件,这个文件要妥善保管,里面有连接Django 和小桶的钥匙。

到这里先告一段落吧,就这点,已经又臭又长了,😭。下篇继续记录一下,如何连接Django 和AWS之后,就可以建App了。

( 插播:哟!发现一个Django可以嵌入表情耶,貌似后面用得上,保存!资源1 资源2

在Django里建立App(pending)

连接托管平台(pending)

上传至托管平台(pending)

跟大妈学Django - Part 1(Django入门)

跟大妈学Django Part - 2 (Django入门续集2)

跟大妈学Django Part - 3 (Django入门续集3)

跟大妈学Django Part - 4 (Django入门续集4)

跟大妈学Django Part - 5 (Django入门续集5)

跟大妈学Django Part - 6 (Django入门续集6)

跟大妈学Django Part - 7 (Django入门续集7)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CrankyCat

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值