小编use*_*218的帖子

如何使用python boto获取亚马逊S3中的唯一文件夹列表

我正在使用boto和python以及amazon s3.

如果我使用

[key.name for key in list(self.bucket.list())]

然后我得到所有文件的所有密钥.

mybucket/files/pdf/abc.pdf
mybucket/files/pdf/abc2.pdf
mybucket/files/pdf/abc3.pdf
mybucket/files/pdf/abc4.pdf
mybucket/files/pdf/new/
mybucket/files/pdf/new/abc.pdf
mybucket/files/pdf/2011/
Run Code Online (Sandbox Code Playgroud)

什么是最好的方式

1. either get all folders from s3
2. or from that list just remove the file from the last and get the unique keys of folders
Run Code Online (Sandbox Code Playgroud)

我想这样做

set([re.sub("/[^/]*$","/",path) for path in mylist]
Run Code Online (Sandbox Code Playgroud)

python amazon-s3 boto

28
推荐指数
6
解决办法
4万
查看次数

如何使Django表单字段仅包含字母数字字符

我有这个模型

name = models.CharField(max_length=50, blank=True, null=True)
email = models.EmailField(max_length=50, unique=True)
Run Code Online (Sandbox Code Playgroud)

我希望用户不应该在两个字段中使用除字母数字之外的任何其他字符.

有什么办法吗?

python django

27
推荐指数
1
解决办法
2万
查看次数

如何在python中启用Django shell中的历史记录

我在用Django shell_plus.

readlinerlcompleter模块安装在那里.

但是我发现当我关闭我的shell_plus会话时,我可以回到我之前会话中使用的历史命令.

在我的办公室里,我也可以回到之前的命令.

我需要做些什么呢

python django centos

8
推荐指数
2
解决办法
2867
查看次数

Amazon AMI和EBS快照之间有什么区别

我的基本需求是,我应该能够使用所有设置从我保存的图像中为当前运行的Centos创建新实例.

我在考虑两种选择

  1. 从任何州创建AMI
  2. 创建EBS的快照

我很困惑他们之间的区别是什么.它们是相同还是不同.

我可以从EBS快照创建新实例/

我也可以在我的localhost上使用AMI来创建相同的操作系统

amazon amazon-ec2 amazon-web-services amazon-ami

7
推荐指数
1
解决办法
5392
查看次数

如何使apache包含文件夹中的所有文件

我知道我能做到这一点

Include "/usr/local/apache/conf/php.conf"
Run Code Online (Sandbox Code Playgroud)

如何让apache加载某些目录中的所有文件

Include /usr/mydir/*
Run Code Online (Sandbox Code Playgroud)

linux apache centos

6
推荐指数
1
解决办法
3282
查看次数

有什么方法可以在更改代码时使用 django shell 而无需重新启动

我使用 Djangoshell_plus来测试我的模型和视图

但是当我收到错误时,我更改了代码,然后我必须重新启动我的 shell_plus

然后输入我输入的所有命令

有什么方法不需要重新启动shell,我可以更改代码,然后再次测试命令

python django shell

5
推荐指数
1
解决办法
2211
查看次数

如何在Python Django中将DecimalField转换为float?

我有这个表单字段:

area = forms.DecimalField(max_digits=20)
Run Code Online (Sandbox Code Playgroud)

当我发布它时,我得到unicode数据:

raise Exception(type(a.get('area',))
Run Code Online (Sandbox Code Playgroud)

结果是

<type 'unicode'>

如何将其转换为浮动?我想对结果执行算术运算.

如果我这样做:

float(a.get('area', '0'))
Run Code Online (Sandbox Code Playgroud)

然后我明白了

float()参数必须是字符串或数字

python django

4
推荐指数
1
解决办法
1万
查看次数

如何在django中的算术查询中包含空值

我有一个名为surface_areanull和float 的字段.

现在我无法设置它,default 0因为0表示业务规则中的其他内容.

我想执行这样的查询

Room.objects.filter(surface_area__lte=40)

但这不包括空值.

如何为lte查询包含空值

python django

4
推荐指数
1
解决办法
260
查看次数

什么最好区分字符串中的文件和目录路径

我有来自Amazon S3 API服务的字符串列表,其中包含完整的文件路径,如下所示:

fileA.jpg
fileB.jpg
images/
Run Code Online (Sandbox Code Playgroud)

我想将分区文件夹和文件放入不同的列表中.

我怎么能分开它们?

我在想这样的正则表达式:

for path in list:
    if re.search("/$",path)
        dir_list.append(path)
    else
        file_list.append(path)
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法?

python regex

1
推荐指数
1
解决办法
878
查看次数

无法使用django在amazon s3中写入文件

我已将'everyone'作为AWS s3存储桶权限的所有权限.

我用django.我能够读取文件,但我无法写入.

我正在尝试这个

>>> print default_storage.connection
S3Connection:s3.amazonaws.com
>>> from django.core.files.base import ContentFile
>>> from django.core.cache import cache

>>> default_storage.exists('testkey')
True



>>> file = default_storage.open('storage_test', 'w')
>>> file.write('storage contents')
Traceback (most recent call last):


S3ResponseError: S3ResponseError: 403 Forbidden
<?xml version="1.0" encoding="UTF-8"?>
<Error><Code>AccessDenied</Code><Message>Access Denied</Message><RequestId>FDD54
Run Code Online (Sandbox Code Playgroud)

我在设置中添加了这个

DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage'
AWS_ACCESS_KEY_ID='XXXXXXXXXXXXXXA'
AWS_SECRET_ACCESS_KEY='XXXXXXX'
AWS_STORAGE_BUCKET_NAME='testbucket'
Run Code Online (Sandbox Code Playgroud)

我也很困惑如何让django s3知道从s3使用哪个用户.我很迷惑.访问密钥是user_123我创建的,但在权限我无法在aws s3下拉列表中看到该用户

django amazon-s3 amazon-web-services

0
推荐指数
1
解决办法
1572
查看次数