【问题标题】:Django Image file upload default to random imagesDjango Image 文件上传默认为随机图片
【发布时间】:2013-07-02 07:40:25
【问题描述】:

我的用例希望如果用户不上传图片,我会从管理员创建的图片池中随机选择一张图片。

该图像池包含管理员使用 django-admin 上传的图像。

我尝试了一些方法,例如重命名文件并由管理员上传;并从这些名称中随机选择。但是这些名称是硬编码的。所以它不是一个可扩展的想法。

关于如何完成的任何建议。

如果不使用自定义应用程序,我更愿意。

【问题讨论】:

  • 为什么不列出图像管理目录(os.listdir())中的所有图像文件,然后选择其中一个,然后复制选择的文件?

标签: python django django-models


【解决方案1】:

想法。

import os
import os.path
from random import choice
from shutil import copy_file

...
filename_list = os.listdir( ADMIN_DIR )
filename_to_copy = choice( filename_list )
file_to_copy = os.path.join( ADMIN_DIR, filename_to_copy ) # it contains a file to copy
# 'change_filename' is a function that changes a file name for a result file. You should implement it.
new_file = os.path.join( DEST_DIR, change_filename( filename_to_copy ) )
# then copy this file to a destination dir.
copyfile( file_to_copy, new_file )

【讨论】:

    猜你喜欢
    • 2014-09-01
    • 1970-01-01
    • 2016-04-16
    • 1970-01-01
    • 2015-12-06
    • 2017-05-20
    • 1970-01-01
    • 2017-01-26
    • 2012-11-09
    相关资源
    最近更新 更多