如何将我的创建视图重定向到与创建视图ID django相同的URL ID

时间:2019-03-21 05:17:50

标签: django-models django-class-based-views

我正在尝试创建一个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(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

           <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

0 个答案:

没有答案