웹 프론트엔드 JS 튜토리얼 FileField 사용자 정의 업로드 파일 이름에 대한 자세한 설명

FileField 사용자 정의 업로드 파일 이름에 대한 자세한 설명

Aug 23, 2017 pm 01:56 PM
ie 이름

이 기사에서는 예제 코드를 통해 사용자 정의 FileField에 파일 이름을 업로드할 때의 문제를 소개합니다. 관심 있는 친구는 참고할 수 있습니다.

FileField의 upload_to 속성은 업로드된 파일의 저장 디렉터리와 이름을 설정할 수 있으며, 또는 메소드와 같은 호출 가능 항목일 수 있습니다.

upload_to 값을 메소드로 설정하면 업로드되는 파일의 이름을 수정할 수 있습니다. 이 메서드에는 인스턴스와 파일 이름이라는 두 개의 매개 변수가 필요하며, 인스턴스는 FileField가 속한 모델 인스턴스이고, 파일 이름은 업로드된 파일의 이름입니다.

예:


def user_directory_path(instance, filename):
 # file will be uploaded to MEDIA_ROOT/user_<id>/<filename>
 return &#39;user_{0}/{1}&#39;.format(instance.user.id, filename)
class MyModel(models.Model):
 upload = models.FileField(upload_to=user_directory_path)
로그인 후 복사

클래스가 __call__ 메서드를 정의하면 func처럼 호출할 수도 있습니다. 따라서 upload_to 값은 __call__ 메서드를 정의하는 클래스일 수도 있습니다.

예를 들어 업로드 시간을 기준으로 파일 이름에 타임스탬프를 추가하려면:


import hashlib
import os
import time
from django.utils.deconstruct import deconstructible
@deconstructible
class TimeStampFileName(object):
 def __init__(self, path):
  self.path = os.path.join(path, "%s%s")
 def __call__(self, instance, filename):
  extension = os.path.splitext(filename)[1]
  data = "%s_%d"%(filename,int(time.time()))
  file_hash = hashlib.sha1(data).hexdigest()
  return self.path % (file_hash, extension)
로그인 후 복사

모델의 FileField는 다음과 같이 정의할 수 있습니다.


class MyModel(models.Model):
 upload = models.FileField(upload_to=TimeStampFileName(&#39;media/&#39;), )
로그인 후 복사

위 내용은 FileField 사용자 정의 업로드 파일 이름에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Mac 컴퓨터 이름, 호스트 이름, Bonjour 이름을 쉽게 사용자화하는 3가지 팁 Mac 컴퓨터 이름, 호스트 이름, Bonjour 이름을 쉽게 사용자화하는 3가지 팁 Mar 06, 2024 pm 12:20 PM

많은 Mac 사용자는 장치의 기본 이름을 유지하는 경향이 있으며 변경을 고려하지 않을 수도 있습니다. 많은 사람들이 초기 설정에서 "Johnny's MacBook Air" 또는 간단히 "iMac"과 같은 이름을 고수하는 것을 선택합니다. Mac의 이름을 변경하는 방법을 배우는 것은 특히 여러 장치를 사용하는 경우 장치를 빠르게 구별하고 관리하는 데 도움이 되므로 매우 유용한 기술입니다. 다음으로 macOS 시스템에서 컴퓨터 이름, 호스트 이름, Bonjour 이름(로컬 호스트 이름)을 변경하는 방법을 단계별로 알려드리겠습니다. Mac 이름을 변경해야 하는 이유는 무엇입니까? Mac의 이름을 변경하면 개성을 보여줄 수 있을 뿐만 아니라 사용자 경험을 개선하는 데에도 도움이 됩니다. Mac을 개인화하세요. 기본 이름이 마음에 들지 않을 수 있으므로 원하는 이름으로 변경하세요.

Internet Explorer에서 Edge 열기: MS Edge 리디렉션을 중지하는 방법 Internet Explorer에서 Edge 열기: MS Edge 리디렉션을 중지하는 방법 Apr 14, 2023 pm 06:13 PM

Internet Explorer가 오랫동안 인기를 끌지 못했다는 것은 비밀이 아니지만 Windows 11이 출시되면서 현실이 시작되었습니다. 나중에 IE를 대체하는 경우도 있지만 이제 Edge는 Microsoft 최신 운영 체제의 기본 브라우저입니다. 현재로서는 Windows 11에서 Internet Explorer를 계속 활성화할 수 있습니다. 그러나 IE11(최신 버전)은 이미 공식적인 종료 날짜인 2022년 6월 15일을 갖고 있으며 시계는 계속 흐르고 있습니다. 이를 염두에 두고 Internet Explorer가 때때로 Edge를 여는 것을 발견했을 수 있으며 마음에 들지 않을 수도 있습니다. 그럼 왜 이런 일이 일어나는 걸까요? 존재하다

win11에서 ie11 브라우저를 사용할 수 없으면 어떻게 해야 합니까? (win11은 IE 브라우저를 사용할 수 없습니다) win11에서 ie11 브라우저를 사용할 수 없으면 어떻게 해야 합니까? (win11은 IE 브라우저를 사용할 수 없습니다) Feb 10, 2024 am 10:30 AM

점점 더 많은 사용자들이 win11 시스템을 업그레이드하기 시작하고 있습니다. 사용자마다 사용 습관이 다르기 때문에 여전히 많은 사용자들이 ie11 브라우저를 사용하고 있습니다. 그렇다면 win11 시스템에서 ie 브라우저를 사용할 수 없으면 어떻게 해야 합니까? windows11은 여전히 ​​ie11을 지원하나요? 해결책을 살펴보겠습니다. win11에서 ie11 브라우저를 사용할 수 없는 문제 해결 방법 1. 먼저 시작 메뉴를 마우스 오른쪽 버튼으로 클릭한 후 "명령 프롬프트(관리자)"를 선택하여 엽니다. 2. 연 후 "Netshwinsockreset"을 직접 입력하고 Enter를 눌러 확인합니다. 3. 확인 후 "netshadvfirewallreset&rdqu"를 입력하세요.

Win10에서 IE를 열 때 Edge로 자동 점프를 취소하는 방법_IE 브라우저 페이지 자동 점프에 대한 솔루션 Win10에서 IE를 열 때 Edge로 자동 점프를 취소하는 방법_IE 브라우저 페이지 자동 점프에 대한 솔루션 Mar 20, 2024 pm 09:21 PM

최근 많은 win10 사용자는 컴퓨터 브라우저를 사용할 때 IE 브라우저가 항상 자동으로 엣지 브라우저로 이동한다는 사실을 발견했습니다. 그러면 win10에서 IE를 열 때 자동 엣지 브라우저로 이동을 끄는 방법은 무엇입니까? 이 사이트에서는 win10에서 IE를 열 때 자동으로 가장자리로 이동하고 닫는 방법을 사용자에게 주의 깊게 소개합니다. 1. 엣지 브라우저에 로그인하고 오른쪽 상단에서...를 클릭하고 드롭다운 설정 옵션을 찾습니다. 2. 설정을 입력한 후 왼쪽 열에서 기본 브라우저를 클릭합니다. 3. 마지막으로 호환성에서 웹사이트가 IE 모드에서 다시 로드되는 것을 허용하지 않는 확인란을 선택하고 IE 브라우저를 다시 시작합니다.

IE 바로가기가 삭제되지 않는 문제 해결 방법 IE 바로가기가 삭제되지 않는 문제 해결 방법 Jan 29, 2024 pm 04:48 PM

삭제할 수 없는 IE 바로가기 해결 방법: 1. 권한 문제, 3. 소프트웨어 충돌, 5. 악성 소프트웨어, 7. IE 재설치, 9. 바로가기의 대상 경로를 확인하세요. 10. 다른 요소를 고려하세요. 11. 전문가에게 문의하세요. 자세한 소개: 1. 권한 문제, 바로가기를 마우스 오른쪽 버튼으로 클릭하고 "보안" 탭에서 "속성"을 선택한 후 바로가기를 삭제할 수 있는 권한이 있는지 확인하세요. 그렇지 않은 경우 관리자로 실행해 보세요. .

시대의 끝: Internet Explorer 11이 만료되었습니다. 알아야 할 사항은 다음과 같습니다. 시대의 끝: Internet Explorer 11이 만료되었습니다. 알아야 할 사항은 다음과 같습니다. Apr 20, 2023 pm 06:52 PM

2022년 6월 15일은 Microsoft가 IE11(Internet Explorer 11)에 대한 지원을 종료하고 레거시 브라우저 장을 마감하는 날입니다. 회사는 한동안 사용자에게 이 수명 종료 날짜를 상기시키고 Microsoft Edge로의 전환을 계획할 것을 촉구해 왔습니다. Microsoft는 Windows용 최신 기본 웹 브라우저로 IE11을 Windows 8.1에 번들로 제공합니다. 비록 (현재의) Chrome 수준에는 도달하지 못했지만 2014년에는 IE8에 이어 두 번째로 많이 사용된 데스크톱 브라우저였습니다. 물론 20으로

IE 가속 기능을 활성화하는 방법 IE 가속 기능을 활성화하는 방법 Jan 30, 2024 am 08:48 AM

IE 가속 기능을 활성화하는 방법은 무엇입니까? IE는 웹 페이지를 열기에는 너무 느립니다. IE에서 하드웨어 가속 모드를 활성화할 수 있습니다. 많은 친구들이 IE 브라우저를 사용할 때 웹 페이지를 여는 속도가 매우 느리고 이는 웹 탐색에도 일정한 영향을 미친다고 보고했습니다. 이런 경우에는 IE 브라우저의 하드웨어 가속 모드를 켜면 됩니다. 관심 있으신 분들은 아래에 IE의 가속 기능을 켜는 방법을 정리했습니다. , 아래를 살펴보세요! IE에서 가속 기능을 활성화하려면 IE 보안 브라우저를 열고 오른쪽 상단에 있는 톱니바퀴 모양의 "설정" 아이콘을 클릭한 후 그림과 같이 "인터넷 옵션"을 선택하여 들어갑니다. 2. 그림과 같이 인터넷 옵션 창 상단에 있는 탭 탐색에서 "고급"을 클릭하세요. 삼.

win7에서 ie9 브라우저를 제거하는 방법 win7에서 ie9 브라우저를 제거하는 방법 Jul 10, 2023 am 11:41 AM

win7에서 ie9를 제거하는 방법은 무엇입니까? 컴퓨터는 직장에서 일을 처리할 수 있으며 TV 프로그램을 시청하는 데에도 사용될 수 있습니다. 드라마를 보는 것과 마찬가지로 브라우저를 사용하여 시청하는 경우가 늘어나고 있으며, 브라우저의 기능도 완벽하기 때문에 이제 ie9 브라우저를 사용하는 사람은 점점 줄어들고 있습니다. 그렇다면 win7에서 브라우저를 제거하는 방법은 무엇일까요? 시스템에서 IE9 브라우저를 제거합니다. win7에서 ie9 브라우저를 제거하는 방법. 1. 먼저 두 번 클릭하여 MyPC를 열고 프로그램 제거 또는 교체를 선택합니다. 2. 그런 다음 "ViewInstallUpdate"를 찾아 클릭합니다. 내부에서 "windows Internet Explorer9"을 찾은 후 마우스 오른쪽 버튼을 클릭하여 삭제하세요. 위의 내용은 wi가 포함된 편집기입니다.

See all articles