Как я могу перенаправить мое представление создания на идентификатор URL, идентификатор которого такой же, как идентификатор создания представления django - PullRequest
0 голосов
/ 21 марта 2019

Я пытаюсь создать createview, который будет создавать информацию о пользователях, а затем перенаправлять их на страницу профиля с полной информацией, но проблема заключается в том, что после отправки формы он перенаправляет их на страницу профиля, но создает новый экземпляр этой страницы профиля.вместо перенаправления на актуальную страницу профиля с обновленной информацией.Он просто создает экземпляры снова и снова, но я хочу, чтобы он обновлял представление после того, как оно его сделало один раз

Вот здесь представление создания

 class Profile_Create(CreateView):
 fields =   ['image','cover_image','country','height','birth_date','smoking','relation 
 ship','looking_for','diet','kids','eye_color','status','hobby',]
model = UserDetail
template_name = 'social_app/profile-create.html'
context_object_name = 'user'

Вот модели.py

    class UserDetail(models.Model):
    country = CountryField()

    height = models.PositiveIntegerField(default = 110 , validators=[MaxValueValidator(215), MinValueValidator(70)])

    birth_date = models.DateField(("Date"), default=datetime.date.today)

    smoking = models.CharField(max_length = 30,default = 'No')


    def get_absolute_url(self):
        return reverse('social_app:profile',kwargs = {'pk':self.pk})

Вот URL-адреса как для создания профиля, так и для профиля

   url(r'^profile/(?P<pk>[-\w]+)/$',views.profile,name = 'profile'),
   url(r'^profile-create/(?P<pk>[- 
  \w]+)/$',views.Profile_Create.as_view(),name = 
  'profile_create'),

Здесь приведен HTML-код для этих URL-адресов

           <li><a class="dropdown-item" href="{% url 'social_app:profile'  
          user.pk %}">My Profile</a></li>



              <li><a class="dropdown-item" href="{% url 'social_app:profile_create' user.pk %}">Edit Profile</a
...