2016-08-10 3 views
0

django 아바타에 새로운 문제가 있습니다. 템플릿 프로젝트에서 django 아바타의 기본 템플릿을 변경할 수 있습니까?django avatar 사용자 정의 템플릿 디렉토리

내 현재 템플릿 :

{% extends "templates/base.html" %} 
 
{% load i18n avatar_tags %} 
 

 
{% block content %} 
 
    <p>Your current avatar :</p> 
 
    {% avatar user %} 
 
    {% if not avatars %} 
 
     <p>{% trans "You haven't uploaded an avatar yet. Please upload one now." %}</p> 
 
    {% else %} 
 
     <form method="POST" action="{% url 'avatar_change' %}"> 
 
      <ul> 
 
       {{ primary_avatar_form.as_ul }} 
 
      </ul> 
 
      <p>{% csrf_token %}<input type="submit" value="{% trans "Choose new Default" %}" /></p> 
 
     </form> 
 
    {% endif %} 
 
    <form enctype="multipart/form-data" method="POST" action="{% url 'avatar_add' %}"> 
 
     {{ upload_avatar_form.as_p }} 
 
     <p>{% csrf_token %}<input type="submit" value="{% trans "Upload New Image" %}" /></p> 
 
    </form> 
 
{% endblock %}

내 프로젝트의 아바타 템플릿 디렉토리 작동하지 변화를 복사/붙여 넣기.

편집 :

# -*- coding: utf-8 -*- """ Django settings for mysite project. 

Generated by 'django-admin startproject' using Django 1.9.8. 

For more information on this file, see https://docs.djangoproject.com/en/1.9/topics/settings/ 

For the full list of settings and their values, see https://docs.djangoproject.com/en/1.9/ref/settings/ """ 

import os from django.core.mail import send_mail 

# Build paths inside the project like this: os.path.join(BASE_DIR, ...) 
# BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) 
# print "base dir path :", BASE_DIR 
# resultat du print => /home/cpoudevigne/Projets/MyMemoryBox/mysite 

# Quick-start development settings - unsuitable for production 
# See https://docs.djangoproject.com/en/1.9/howto/deployment/checklist/ 

# SECURITY WARNING: keep the secret key used in production secret! SECRET_KEY = '[email protected]%[email protected]%!lt3o$t6i5g(&pfa8f9aa5#[email protected]%7dzh(' 

# SECURITY WARNING: don't run with debug turned on in production! DEBUG = True 

ALLOWED_HOSTS = [] 

# Grappelli settings 

GRAPPELLI_ADMIN_TITLE = "My Title" 

# Application definition 

INSTALLED_APPS = [ 
    'grappelli', 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'avatar', 
    'registration', 
    'mymemoryapp', ] 

MIDDLEWARE_CLASSES = [ 
    'django.middleware.security.SecurityMiddleware', 
    'django.contrib.sessions.middleware.SessionMiddleware', 
    'django.middleware.common.CommonMiddleware', 
    'django.middleware.csrf.CsrfViewMiddleware', 
    'django.contrib.auth.middleware.AuthenticationMiddleware', 
    'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 
    'django.contrib.messages.middleware.MessageMiddleware', 
    'django.middleware.clickjacking.XFrameOptionsMiddleware', ] 

ROOT_URLCONF = 'mysite.urls' 

TEMPLATES = [ 
    { 
     'BACKEND': 'django.template.backends.django.DjangoTemplates', 
     'DIRS': [], 
     'APP_DIRS': True, 
     'OPTIONS': { 
      'context_processors': [ 
       'django.template.context_processors.debug', 
       'django.template.context_processors.request', 
       'django.contrib.auth.context_processors.auth', 
       'django.contrib.messages.context_processors.messages', 
      ], 
     }, 
    }, ] 

WSGI_APPLICATION = 'mysite.wsgi.application' 

# Database 
# https://docs.djangoproject.com/en/1.9/ref/settings/#databases 

DATABASES = { 
    'default': { 
     'ENGINE': 'django.db.backends.mysql', 
     'NAME': '', 
     'USER': '', 
     'PASSWORD': '', 
     'HOST': 'localhost', 
    } } 

# Django-registration settings ACCOUNT_ACTIVATION_DAYS = 7 LOGIN_REDIRECT_URL = '/' 

# Password validation 
# https://docs.djangoproject.com/en/1.9/ref/settings/#auth-password-validators 

AUTH_PASSWORD_VALIDATORS = [ 
    { 
     'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', 
    }, 
    { 
     'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', 
    }, 
    { 
     'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', 
    }, 
    { 
     'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', 
    }, ] 

# Django-mail Settings 

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_USE_TLS = True EMAIL_PORT = 587 EMAIL_HOST = 'smtp.gmail.com' EMAIL_HOST_USER = '' EMAIL_HOST_PASSWORD = '' DEFAULT_FROM_EMAIL = '' 

# Internationalization 
# https://docs.djangoproject.com/en/1.9/topics/i18n/ 

LANGUAGE_CODE = 'en-us' 

TIME_ZONE = 'UTC' 

USE_I18N = True 

USE_L10N = True 

USE_TZ = True 

# Static files (CSS, JavaScript, Images) 
# https://docs.djangoproject.com/en/1.9/howto/static-files/ PROJECT_DIR = os.path.dirname(__file__) print "PROJECT_DIR :", PROJECT_DIR 

MEDIA_ROOT = os.path.join(PROJECT_DIR, 'media') MEDIA_URL = '/media/' STATIC_ROOT = os.path.join(PROJECT_DIR, 'mysite', 'static') STATIC_URL 
= '/static/' 

STATICFILES_DIRS = (
    # Put strings here, like "/home/html/static" or "C:/www/django/static". 
    # Always use forward slashes, even on Windows. 
    # Don't forget to use absolute paths, not relative paths. 
    os.path.join(PROJECT_DIR, 'static/'),) print 'STATICFILES_DIRS :', STATICFILES_DIRS 

답변

0

당신이 django-avatar의 변경 페이지를 오버라이드 (override) 할 경우, 당신은 <appname>/templates/avatar/change.html에 당신이 존재하는 템플릿을 배치해야합니다 : 내 장고 버전은

1.9.8 내 settings.py입니다 구성한 경우 <templates_dir>/avatar/change.html입니다.

+0

폴더 아바타를 내 앱 템플릿 디렉토리에 배치했지만 작동하지 않습니다. – cpoudevigne

+0

Django의 어떤 버전을 사용하십니까? 또한 게시물을'settings.py'로 업데이트하십시오. – mingaleg

+0

템플릿을 일부 앱 디렉토리에 넣었습니까? 그렇다면'INSTALLED_APPS'을 다시 배열해야합니다. Django가 찾은 첫 번째 템플릿을 선택하게합니다. – mingaleg

관련 문제