Django使用按钮创建s3存储桶
我试图创建一个按钮,它将在AWS中创建一个S3存储桶,一旦点击。当谈到Django时,我仍然有点绿色,所以我不知道如何让它运行。我阅读了一些教程,但所有这些教程都展示了在单击按钮时如何向数据库添加内容。 这是我迄今所做的:Django使用按钮创建s3存储桶
views.py
class createS3(TemplateView): template_name = 'project/create_s3.html'
def get(self, request):
form = S3Form()
return render(request, self.template_name, {'form': form})
def createBucket(self, bucketName):
form = S3Form(request.POST)
s3 = boto3.resource('s3')
if form.is_valid():
name = form.cleaned_data['name']
s3.create_bucket(Bucket=name)
def post(self, request):
form = S3Form(request.POST)
if form.is_valid():
name = form.cleaned_data['name']
args = {'form':form, 'name':name}
return render(request, self.template_name, args)
这里是模板:
{% include "home/_header.html" %} {% block content %}
{% load staticfiles %}
<div class="mainPage">
<div class="s3Wrapper">
<form method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit" name="create" class="button create">Create</button>
</form>
</div>
</div>
{% endblock content %}
现在我的问题是,我如何通过点击按钮来调用createBucket
功能?或者我需要创建一个新的url并传递'name'变量来创建一个新的桶?
谢谢!
回答:
你为什么不这样做这样的事情:
def createBucket(self, bucketName): s3 = boto3.resource('s3')
s3.create_bucket(Bucket=bucketName)
def post(self, request):
form = S3Form(request.POST)
if form.is_valid():
name = form.cleaned_data['name']
self.createBucket(name)
...
以上是 Django使用按钮创建s3存储桶 的全部内容, 来源链接: utcz.com/qa/257373.html