사용자 정의 템플릿 태그에서 정적 파일에 액세스

JBux

내 템플릿에서 이미지 입력을받는 사용자 지정 태그를 추가 한 다음 해당 이미지와 높이 또는 너비를 설명하는 클래스를 출력하려고합니다.

내 코드는 다음과 같습니다.

템플릿 :

{% load custom_tags %}
{% image_size_class "MANAGEMENT/image.jpg" %}

맞춤 태그 :

from django import template
from PIL import Image
from django.templatetags.static import static
register = template.Library()

@register.simple_tag
def image_size_class(pattern):
    pattern_url = static(pattern)
    img = Image.open(pattern_url)
    width, height = img.size
    if width > height:
        class_tag = "wide"
    else:
        class_tag = "tall"

    return '<img src="' + pattern_url + '"' + '  class="' + class_tag + '">'

원하는 결과 :

<img src="/static/MANAGEMENT/image.jpg" class="wide">

실제로 발생하는 것은 PIL에서 오류가 발생하는 것입니다.

[Errno 2] No such file or directory: u'/static/MANAGEMENT/image.jpg'

PIL이 내가 원하는 파일을 찾을 수없는 것 같지만 어디에서 찾고 있는지 잘 모르겠습니다! 어떤 도움이라도 대단히 감사하겠습니다.

안드레이 넬 루빈

문제는 PIL이 디스크의 "/ static /"폴더에 액세스하려고 시도하는 것입니다. 다음과 같이 파일의 실제 경로를 제공해야합니다.

import os
from django.conf import settings
...

@register.simple_tag
def image_size_class(pattern):
    pattern_url = static(pattern)
    file_path = os.join(settings.STATIC_ROOT, pattern)
    img = Image.open(file_path)
    width, height = img.size
    if width > height:
        class_tag = "wide"
    else:
        class_tag = "tall"

    return '<img src="' + pattern_url + '"' + '  class="' + class_tag + '">'

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

사용자 정의 템플릿에서 Drupal 엔티티 필드에 액세스

분류에서Dev

Wordpress 회원이 사용자 정의 페이지 / 템플릿에 액세스

분류에서Dev

.ASP 파일에 액세스하지 않고 Volusion 템플릿을 사용자 지정하는 방법

분류에서Dev

Flask 템플릿 내에서 특정 사전 키에 액세스

분류에서Dev

사용자 정의 모듈 Drupal 8의 Twig 템플릿에있는 액세스 변수

분류에서Dev

"템플릿"@helper 내에서 MVC의 정적 사용자 지정 도우미에 어떻게 액세스합니까?

분류에서Dev

Django 사용자 정의 템플릿 태그의 템플릿에서 JQuery가 작동하지 않습니다.

분류에서Dev

템플릿 클래스의 비 템플릿 기반의 정적 데이터에 액세스

분류에서Dev

중첩 클래스 템플릿의 정적 멤버 함수에 액세스

분류에서Dev

여러 인수가있는 사용자 지정 템플릿 태그가있는 템플릿에서 "if"사용

분류에서Dev

사용자 정의 템플릿 태그

분류에서Dev

모든 템플릿에서 사용자 정의 개체 표현 응용 프로그램에 액세스하는 방법은 무엇입니까?

분류에서Dev

다른 AWS 계정에서 QuickSight 템플릿에 대한 액세스 허용

분류에서Dev

"포함 된"템플릿에서 "정적"템플릿 태그를 사용하고 있습니까?

분류에서Dev

PHPStorm : 사용자 정의 파일 템플릿에 파일 이름 생성

분류에서Dev

Keycloak FTL : 사용자 지정 테마의 로그인 템플릿 내에서 오류 메시지에 액세스하는 방법

분류에서Dev

가져온 스타일 시트를 사용자 지정 요소의 템플릿 태그 콘텐츠에 적용하는 방법은 무엇입니까?

분류에서Dev

(ARM 템플릿) WebSite.json에서 연결 문자열에 액세스하거나 ARM 템플릿 설정으로 Web.config를 재정의합니다.

분류에서Dev

Django에서 포함 태그 내의 상위 템플릿 컨텍스트에서 현재 사용자 세션에 액세스 할 수 있습니까?

분류에서Dev

TFS-사용자 지정에서 Agile로 프로세스 템플릿 변경

분류에서Dev

하나의 템플릿 파일에 사용자 정의 HTTP 헤더 추가 Wordpress

분류에서Dev

TextBox 헤더에 사용자 지정 템플릿 적용

분류에서Dev

템플릿에 Magento 사용자 정의 정적 블록이 없습니다.

분류에서Dev

사용자 정의 파일에 대한 액세스 금지

분류에서Dev

Django 사용자 지정 템플릿 태그를 어디에 넣어 사용자 지정 Django 관리 템플릿에서 사용할 수 있습니까?

분류에서Dev

정적 템플릿 파일의 변수를 PHP로 교체하고 사용자 에이전트에 출력

분류에서Dev

플라스크의 템플릿 파일 내에서 python3 사용자 정의 함수를 사용하는 방법은 무엇입니까?

분류에서Dev

angular.js를 사용하여 템플릿에서 시작된 모델 액세스 및 수정

분류에서Dev

내 장고 프로젝트에서 사용자 정의 템플릿 태그를 만드는 방법

Related 관련 기사

  1. 1

    사용자 정의 템플릿에서 Drupal 엔티티 필드에 액세스

  2. 2

    Wordpress 회원이 사용자 정의 페이지 / 템플릿에 액세스

  3. 3

    .ASP 파일에 액세스하지 않고 Volusion 템플릿을 사용자 지정하는 방법

  4. 4

    Flask 템플릿 내에서 특정 사전 키에 액세스

  5. 5

    사용자 정의 모듈 Drupal 8의 Twig 템플릿에있는 액세스 변수

  6. 6

    "템플릿"@helper 내에서 MVC의 정적 사용자 지정 도우미에 어떻게 액세스합니까?

  7. 7

    Django 사용자 정의 템플릿 태그의 템플릿에서 JQuery가 작동하지 않습니다.

  8. 8

    템플릿 클래스의 비 템플릿 기반의 정적 데이터에 액세스

  9. 9

    중첩 클래스 템플릿의 정적 멤버 함수에 액세스

  10. 10

    여러 인수가있는 사용자 지정 템플릿 태그가있는 템플릿에서 "if"사용

  11. 11

    사용자 정의 템플릿 태그

  12. 12

    모든 템플릿에서 사용자 정의 개체 표현 응용 프로그램에 액세스하는 방법은 무엇입니까?

  13. 13

    다른 AWS 계정에서 QuickSight 템플릿에 대한 액세스 허용

  14. 14

    "포함 된"템플릿에서 "정적"템플릿 태그를 사용하고 있습니까?

  15. 15

    PHPStorm : 사용자 정의 파일 템플릿에 파일 이름 생성

  16. 16

    Keycloak FTL : 사용자 지정 테마의 로그인 템플릿 내에서 오류 메시지에 액세스하는 방법

  17. 17

    가져온 스타일 시트를 사용자 지정 요소의 템플릿 태그 콘텐츠에 적용하는 방법은 무엇입니까?

  18. 18

    (ARM 템플릿) WebSite.json에서 연결 문자열에 액세스하거나 ARM 템플릿 설정으로 Web.config를 재정의합니다.

  19. 19

    Django에서 포함 태그 내의 상위 템플릿 컨텍스트에서 현재 사용자 세션에 액세스 할 수 있습니까?

  20. 20

    TFS-사용자 지정에서 Agile로 프로세스 템플릿 변경

  21. 21

    하나의 템플릿 파일에 사용자 정의 HTTP 헤더 추가 Wordpress

  22. 22

    TextBox 헤더에 사용자 지정 템플릿 적용

  23. 23

    템플릿에 Magento 사용자 정의 정적 블록이 없습니다.

  24. 24

    사용자 정의 파일에 대한 액세스 금지

  25. 25

    Django 사용자 지정 템플릿 태그를 어디에 넣어 사용자 지정 Django 관리 템플릿에서 사용할 수 있습니까?

  26. 26

    정적 템플릿 파일의 변수를 PHP로 교체하고 사용자 에이전트에 출력

  27. 27

    플라스크의 템플릿 파일 내에서 python3 사용자 정의 함수를 사용하는 방법은 무엇입니까?

  28. 28

    angular.js를 사용하여 템플릿에서 시작된 모델 액세스 및 수정

  29. 29

    내 장고 프로젝트에서 사용자 정의 템플릿 태그를 만드는 방법

뜨겁다태그

보관