forms now working

This commit is contained in:
David Kennedy 2024-05-14 15:34:45 -04:00
parent f9249f88cd
commit 5ed20c09c3
No known key found for this signature in database
GPG key ID: 6528A5386E66B96B
4 changed files with 35 additions and 34 deletions

View file

@ -179,7 +179,7 @@ urlpatterns = [
name="domain-users-add", name="domain-users-add",
), ),
path( path(
"user-profile/<int:pk>", "user-profile",
views.UserProfileView.as_view(), views.UserProfileView.as_view(),
name="user-profile", name="user-profile",
), ),

View file

@ -25,30 +25,30 @@ class UserProfileForm(forms.ModelForm):
# of these fields as required # of these fields as required
required = ["first_name", "last_name", "title", "email", "phone"] required = ["first_name", "last_name", "title", "email", "phone"]
# def __init__(self, *args, **kwargs): def __init__(self, *args, **kwargs):
# super().__init__(*args, **kwargs) super().__init__(*args, **kwargs)
# # take off maxlength attribute for the phone number field # take off maxlength attribute for the phone number field
# # which interferes with out input_with_errors template tag # which interferes with out input_with_errors template tag
# self.fields["phone"].widget.attrs.pop("maxlength", None) self.fields["phone"].widget.attrs.pop("maxlength", None)
# # Define a custom validator for the email field with a custom error message # Define a custom validator for the email field with a custom error message
# email_max_length_validator = MaxLengthValidator(320, message="Response must be less than 320 characters.") email_max_length_validator = MaxLengthValidator(320, message="Response must be less than 320 characters.")
# self.fields["email"].validators.append(email_max_length_validator) self.fields["email"].validators.append(email_max_length_validator)
# for field_name in self.required: for field_name in self.required:
# self.fields[field_name].required = True self.fields[field_name].required = True
# # Set custom form label # Set custom form label
# self.fields["middle_name"].label = "Middle name (optional)" self.fields["middle_name"].label = "Middle name (optional)"
# # Set custom error messages # Set custom error messages
# self.fields["first_name"].error_messages = {"required": "Enter your first name / given name."} self.fields["first_name"].error_messages = {"required": "Enter your first name / given name."}
# self.fields["last_name"].error_messages = {"required": "Enter your last name / family name."} self.fields["last_name"].error_messages = {"required": "Enter your last name / family name."}
# self.fields["title"].error_messages = { self.fields["title"].error_messages = {
# "required": "Enter your title or role in your organization (e.g., Chief Information Officer)" "required": "Enter your title or role in your organization (e.g., Chief Information Officer)"
# } }
# self.fields["email"].error_messages = { self.fields["email"].error_messages = {
# "required": "Enter your email address in the required format, like name@example.com." "required": "Enter your email address in the required format, like name@example.com."
# } }
# self.fields["phone"].error_messages["required"] = "Enter your phone number." self.fields["phone"].error_messages["required"] = "Enter your phone number."
# self.domainInfo = None self.domainInfo = None

View file

@ -158,7 +158,7 @@
</li> </li>
<li class="usa-nav__primary-item display-flex flex-align-center margin-left-2"> <li class="usa-nav__primary-item display-flex flex-align-center margin-left-2">
<span class="text-base"> | </span> <span class="text-base"> | </span>
<a href="{% url 'user-profile' pk=user.contact.id %}"><span class="text-primary">Your profile</span></a> <a href="{% url 'user-profile' %}"><span class="text-primary">Your profile</span></a>
</li> </li>
<li class="usa-nav__primary-item display-flex flex-align-center margin-left-2"> <li class="usa-nav__primary-item display-flex flex-align-center margin-left-2">
<span class="text-base"> | </span> <span class="text-base"> | </span>

View file

@ -33,7 +33,8 @@ class UserProfileView(UserProfilePermissionView):
def get(self, request, *args, **kwargs): def get(self, request, *args, **kwargs):
logger.info("in get()") logger.info("in get()")
self.object = self.get_object() self.object = self.get_object()
context = self.get_context_data(object=self.object) form = self.form_class(instance=self.object)
context = self.get_context_data(object=self.object, form=form)
logger.info(context) logger.info(context)
return self.render_to_response(context) return self.render_to_response(context)
@ -44,11 +45,11 @@ class UserProfileView(UserProfilePermissionView):
# kwargs.update(self.extra_context) # kwargs.update(self.extra_context)
# return kwargs # return kwargs
# # Override get_object to return the logged-in user # Override get_object to return the logged-in user
# def get_object(self, queryset=None): def get_object(self, queryset=None):
# logger.info("in get_object") logger.info("in get_object")
# user = self.request.user # get the logged in user user = self.request.user # get the logged in user
# if hasattr(user, 'contact'): # Check if the user has a contact instance if hasattr(user, 'contact'): # Check if the user has a contact instance
# logger.info(user.contact) logger.info(user.contact)
# return user.contact return user.contact
# return None return None