Скрытое поле в Django Model

С JSF 2.0 вы можете присоединить слушателя к системному событию

<h:outputText value="#{ManagedBean.someProperty}">
   <f:event type="preRenderView" listener="#{ManagedBean.loadSomeProperty}" />
</h:outputText>

. В качестве альтернативы вы можете заключить страницу JSF в тег f:view

<f:view>
   <f:event type="preRenderView" listener="#{ManagedBean.loadSomeProperty}" />

      .. jsf page here...

<f:view>
29
задан Oli 18 January 2010 в 13:27
поделиться

4 ответа

из документов по Использование подмножества полей в форме :

Установите editable = False в поле модели. В результате любая форма, созданная из модели через ModelForm, не будет включать это поле.

49
ответ дан Ofri Raviv 18 January 2010 в 13:27
поделиться

Вы можете определить подкласс поля пользовательской модели и переопределить метод formfield(), чтобы вернуть поле с виджетом HiddenInput. См. документацию для пользовательских полей .

4
ответ дан Daniel Roseman 18 January 2010 в 13:27
поделиться

Если у вас есть доступ к шаблону, вы можете отобразить его, у него есть скрытое поле со следующим кодом:

{{ form.field_name.as_hidden }}

вместо стандартного:

{{ form.field_name }}
68
ответ дан Gregor Müllegger 18 January 2010 в 13:27
поделиться

Хотя вы упомянули, что вы не можете использовать исключение в вашем случае, я думаю, что другие, которые встречают этот ответ (например, я, основываясь на названии), могут найти его полезным.

Можно выборочно скрывать поля, используя exclude в ModelAdmin, вот фрагмент из того, над чем я работаю:

class ItemsAdmin(admin.ModelAdmin):
    form = ItemsForm
    actions = None
    list_display = ('item_id', 'item_type', 'item_title', 'item_size', 'item_color',)
    search_fields = ('item_id', 'item_title',)
    inlines = [ImageInline,]
    readonly_fields = ('disable_add_date','disable_remove_date',)
    exclude = ('add_date', 'remove_date',)
    ###.............
1
ответ дан triforcelink 18 January 2010 в 13:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: