class User(AbstractUser):
designation = models.CharField(max_length=20)
pic = models.ForeignKey(
'wagtailimages.Image',
null=True,
blank=True,
on_delete=models.SET_NULL,
related_name='+'
)
from wagtail.wagtailimages.models import Image
class CustomUserEditForm(UserEditForm):
designation = forms.CharField(required=True, label=_("designation"))
# pic = forms.ImageField()
pic = forms.ModelChoiceField(queryset=Image.objects(), required=True, label=_("Pic"))
{% block extra_js %}
<script>
window.chooserUrls = {
'pageChooser': '{% url "wagtailadmin_choose_page" %}',
'externalLinkChooser': '{% url "wagtailadmin_choose_page_external_link" %}',
'emailLinkChooser': '{% url "wagtailadmin_choose_page_email_link" %}'
};
</script>
<script src="{% static 'wagtailadmin/js/vendor/rangy-core.js' %}"></script>
<script src="{% static 'wagtailadmin/js/vendor/mousetrap.min.js' %}"></script>
<script src="{% static 'wagtailadmin/js/expanding_formset.js' %}"></script>
<script src="{% static 'wagtailadmin/js/modal-workflow.js' %}"></script>
<script src="{% static 'wagtailadmin/js/page-editor.js' %}"></script>
<script src="{% static 'wagtailadmin/js/page-chooser.js' %}"></script>
<script src="{% static 'admin/js/vendor/xregexp/xregexp.min.js' %}"></script>
<script src="{% static 'admin/js/urlify.js' %}"></script>
<script src="{% static 'wagtailadmin/js/privacy-switch.js' %}"></script>
<script src="{% static 'wagtailadmin/js/vendor/bootstrap-tooltip.js' %}"></script>
{% hook_output 'insert_editor_js' %}
{% include "wagtailadmin/shared/datetimepicker_translations.html" %}
{% comment %}
Additional js from widgets media. Allows for custom widgets in admin panel.
{% endcomment %}
{{ edit_handler.form.media.js }}
{% comment %}
Additional HTML code that edit handlers define through 'html_declarations'. (Technically this isn't Javascript, but it will generally be data that exists for Javascript to work with...)
{% endcomment %}
{{ edit_handler.html_declarations }}
{% endblock %}class User(AbstractBaseUser, PermissionsMixin):
first_name = models.CharField(max_length=255)
...
profile_pic = models.ForeignKey(
'wagtailimages.Image',
null=True,
blank=True,
on_delete=models.SET_NULL,
related_name='+',
)from wagtail.wagtailimages.widgets import AdminImageChooser
from wagtail.wagtailusers.forms import (
UserEditForm as WagtailUserEditForm, UserCreationForm as WagtailUserCreationForm
)
class UserEditForm(WagtailUserEditForm):
profile_pic = AdminImageChooser()
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['profile_pic'].widget = AdminImageChooser(){% extends "wagtailusers/users/edit.html" %}
{% block extra_fields %}
{% include "wagtailadmin/shared/field_as_li.html" with field=form.profile_pic %}
{% endblock extra_fields %}
{% block extra_js %}
{{ block.super }}
{% include "wagtailadmin/pages/_editor_js.html" %}
{% endblock extra_js %}