Прошу прощения за то, что раздражаю, я начинающий программист и работаю над своим новым проектом.
Я создал эту модель, которая создает профиль при создании пользователя:
class ExpertSignUpForm(UserCreationForm):
class Meta(UserCreationForm.Meta):
model = User
@transaction.atomic
def save(self):
user = super().save(commit=False)
user.is_expert = True
user.save()
expert = Expert.objects.create(expert=user)
return user
и это вид. Итак, что я пытаюсь сделать здесь, это подписать пользователя, затем установить его права доступа в качестве эксперта, а затем войти в него, что я уже сделал, но то, что я не могу сделать, это перенаправить его в его детали / обновления эксперта профиль сразу после входа в систему. так что если вы можете помочь мне с этим. Заранее спасибо.
Вот мнения:
class ExpertSignUpView(CreateView):
model = User
form_class = ExpertSignUpForm
template_name = 'registration/signup_form.html'
def get_context_data(self, **kwargs):
kwargs['user_type'] = 'expert'
return super().get_context_data(**kwargs)
def form_valid(self, form):
user = form.save()
login(self.request, user)
return redirect('/') <<-------
URL могут помочь
urlpatterns = [
path('',ExpertListView.as_view(), name='list'),
path('Esignup/',ExpertSignUpView.as_view(), name='expert_signup'),
path('Ssignup/',StudentSignUpView.as_view(), name='student_signup'),
path('create/',ExpertCreateView.as_view(), name='create'),
path('<str:pk>/',ExpertDetailView.as_view(), name='detail'),
path('<str:pk>/update/',ExpertUpdateView.as_view(), name='update'),
path('<str:pk>/delete/',ExpertDeleteView.as_view(), name='delete'),
]