Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 12, 2010 15:20:40

tezro
От:
Зарегистрирован: 2009-12-09
Сообщения: 90
Репутация: +  0  -
Профиль   Отправить e-mail  

Превью изображений в InlineModelAdmin

В общем, есть модель с ImageField, которая редактируется как TabularInline. Рыщу уже часа два. Ткните пальцем, кто знает, как мне в инлайнах показать саму картинку. Не превью, нет. Не важно что, просто как в инлайн запихнуть своё что-то.



Офлайн

#2 Фев. 12, 2010 15:31:40

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2267
Репутация: +  41  -
Профиль   Отправить e-mail  

Превью изображений в InlineModelAdmin

шаблоны админки пробовал редактировать?)
http://docs.djangoproject.com/en/dev/ref/contrib/admin/#inlinemodeladmin-options
template

Офлайн

#3 Фев. 12, 2010 17:07:52

tezro
От:
Зарегистрирован: 2009-12-09
Сообщения: 90
Репутация: +  0  -
Профиль   Отправить e-mail  

Превью изображений в InlineModelAdmin

slav0nic
шаблоны админки пробовал редактировать?)
http://docs.djangoproject.com/en/dev/ref/contrib/admin/#inlinemodeladmin-options
template
Да пробовал, но честно говоря напоролся на камень.
Шаблоны лежат в contrib/admin/templates/admin/edit_inline/tabular.html
Изменить мне надо только для приложения Projects модель Project.
Куда копировать шаблон для изменения подскажи?



Офлайн

#4 Фев. 12, 2010 23:28:48

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2267
Репутация: +  41  -
Профиль   Отправить e-mail  

Превью изображений в InlineModelAdmin

ну я ж написал template параметр задай и ложи куда угодно, ModelAdmin и так вешается на определённую модель

Офлайн

#5 Фев. 14, 2010 16:26:26

tezro
От:
Зарегистрирован: 2009-12-09
Сообщения: 90
Репутация: +  0  -
Профиль   Отправить e-mail  

Превью изображений в InlineModelAdmin

slav0nic
ну я ж написал template параметр задай и ложи куда угодно, ModelAdmin и так вешается на определённую модель
Ага, вернулся к компу, понял. Слушай, а как в шаблоне в переборе полей достучаться до метода модели?

        {% for fieldset in inline_admin_form %}
{% for line in fieldset %}
{% for field in line %}
<td class="{{ field.field.name }}">
{{ field.field.errors.as_ul }}
{% ifequal field.field.name "image" %}
# Тут хочу вставить просто <img src="{{ модель.поле или модель.метод }}">
{% endifequal %}
{{ field.field }}
</td>
{% endfor %}
{% endfor %}
{% endfor %}
Я туплю?



Офлайн

#6 Фев. 15, 2010 17:23:03

tezro
От:
Зарегистрирован: 2009-12-09
Сообщения: 90
Репутация: +  0  -
Профиль   Отправить e-mail  

Превью изображений в InlineModelAdmin

Помощи прошу. Как в переборе полей получить значение?



Офлайн

#7 Фев. 16, 2010 09:40:26

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2267
Репутация: +  41  -
Профиль   Отправить e-mail  

Превью изображений в InlineModelAdmin

На сколько я помню модель в шаблон не прокидывается, максимум object_id, возьми debug-toolbar и посмотри какие переменные попадают в контекст шаблона)
вариант №2

class BlablaAdmin(model.Admin):
...
def changelist_view(self, request, extra_context=None, **kwargs):
if extra_context is None: extra_context = {}
extra_context.update(model=self.model)
return super(ReviewAdmin, self).changelist_view(request, extra_context=extra_context)
и {{ model }} будет в контексте
вариант 3
написать тег и через object_id определять модель (ContentTypes фреймворк).
смотри Variables provided by the Django admin на http://www.ibm.com/developerworks/opensource/library/os-django-admin/index.html

PS: ЧИТАЙ СОРЦЫ ДЖАНГИ, там даже мне всё понятно В)

Офлайн

#8 Фев. 16, 2010 13:42:15

tezro
От:
Зарегистрирован: 2009-12-09
Сообщения: 90
Репутация: +  0  -
Профиль   Отправить e-mail  

Превью изображений в InlineModelAdmin

slav0nic
На сколько я помню модель в шаблон не прокидывается, максимум object_id, возьми debug-toolbar и посмотри какие переменные попадают в контекст шаблона)
вариант №2
class BlablaAdmin(model.Admin):
...
def changelist_view(self, request, extra_context=None, **kwargs):
if extra_context is None: extra_context = {}
extra_context.update(model=self.model)
return super(ReviewAdmin, self).changelist_view(request, extra_context=extra_context)
и {{ model }} будет в контексте
вариант 3
написать тег и через object_id определять модель (ContentTypes фреймворк).
смотри Variables provided by the Django admin на http://www.ibm.com/developerworks/opensource/library/os-django-admin/index.html

PS: ЧИТАЙ СОРЦЫ ДЖАНГИ, там даже мне всё понятно В)
Да, всё верно, только в что мне даст эта модель или шаблон в инлайне? Мне надо фактически достать id элемента, который перебирается в инлане в данный момент. Это весь формсет чтоль переписывать? Не верю )



Офлайн

#9 Фев. 16, 2010 16:49:56

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2267
Репутация: +  41  -
Профиль   Отправить e-mail  

Превью изображений в InlineModelAdmin

ща начну материться…, ты спросил про метод модели, я тебе ответил.
{{ form.initial.id }} в помощь

Офлайн

#10 Фев. 16, 2010 17:15:32

tezro
От:
Зарегистрирован: 2009-12-09
Сообщения: 90
Репутация: +  0  -
Профиль   Отправить e-mail  

Превью изображений в InlineModelAdmin

slav0nic
ща начну материться…, ты спросил про метод модели, я тебе ответил.
{{ form.initial.id }} в помощь
Я не спорю, про модель всё верно. Только я спрашиваю про инлайны к модели )

Без обид и волнений, но если можешь, то вставь вот в этот шаблон вместо решёток ID элемента в цикле.

        {% for fieldset in inline_admin_form %}
{% for line in fieldset %}
{% for field in line %}
<td class="{{ field.field.name }}">
{{ field.field.errors.as_ul }}
{{ field.field }}
#######################
</td>
{% endfor %}
{% endfor %}
{% endfor %}



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version