일반 UpdateView가 슬러그와 함께 작동하지 않습니다.

Ahmed

나는 django를 처음 접했습니다. 일반적인 UpdateView로 게시물을 업데이트하려고합니다. 그러나 양식을 작성한 후 게시물이 업데이트되지 않고 슬러그 URL을 통해 업데이트보기에 액세스하고 있습니다.

내 모델 :

class Post(models.Model):
title = models.CharField(max_length=60)
post_body = models.TextField()
time_posted = models.DateTimeField(default=timezone.now)
author = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete= models.CASCADE)
slug = models.SlugField(null=False,unique=True)

def __str__(self):
    return self.title

def get_absolute_url(self):
    return reverse('postdetail', kwargs={'slug': self.slug})

def save(self,*args,**kwargs):
    if not self.slug:
        author_id = str(self.author.id)
        self.slug = slugify(self.title +'-'+author_id)
        return super().save(*args, **kwargs)

내 견해 :

class postupdate(LoginRequiredMixin,UserPassesTestMixin,UpdateView):
model = Post
fields = ['title','post_body']

def form_valid(self, form):
    form.instance.author = self.request.user
    return super().form_valid(form)

def test_func(self):
    post = self.get_object()
    if self.request.user == post.author:
        return True
    else:
        return False

내 URL :

path('post/<slug:slug>/updatepost/', postupdate.as_view(),name = 'updatepost'),
아라 칼 아부

save()메서드가 매번 호출되지 않는 것 같습니다 .

class Post(models.Model):
    # rest of your code

    def save(self, *args, **kwargs):
        if not self.slug:
            author_id = str(self.author.id)
            self.slug = slugify(self.title + '-' + author_id)

        return super().save(*args, **kwargs) # outside the `if...` clause

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

.htaccess가 파일 태그와 함께 작동하지 않습니다.

분류에서Dev

pyautogui와 일정이 함께 작동하지 않습니다.

분류에서Dev

찾기와 함께 Jquery 추가가 함께 작동하지 않습니다.

분류에서Dev

textAlignment가 supportsRtl false와 함께 작동하지 않습니다.

분류에서Dev

@RequestBody가 @JsonProperty와 함께 작동하지 않습니다.

분류에서Dev

Homebrew와 함께 postgresql 설치가 작동하지 않습니다.

분류에서Dev

SSL_connect ()가 select ()와 함께 작동하지 않습니다.

분류에서Dev

Mysql 변수 '@'가 'IF'와 함께 작동하지 않습니다.

분류에서Dev

Javascript Alert가 에코와 함께 작동하지 않습니다.

분류에서Dev

ProgressBar가 javafx와 함께 작동하지 않습니다.

분류에서Dev

tsql : datediff가 DEFAULT getdate ()와 함께 작동하지 않습니다.

분류에서Dev

mysqli가 PHP 날짜와 함께 작동하지 않습니다.

분류에서Dev

여러 드롭 다운 필터가 반응 js에서 함께 작동하지 않습니다.

분류에서Dev

OKHttp Authenticator가 Retrofit 일시 중지 재미와 함께 작동하지 않습니다.

분류에서Dev

puppeteer와 함께 작동하도록 querySelectorAll을 가져올 수 없습니다 (정의되지 않은 반환).

분류에서Dev

Msbuild ItemGroup 제외가 와일드 카드와 함께 작동하지 않습니다.

분류에서Dev

JavaScript forEach 메서드가 Arrow 함수와 함께 작동하지 않습니다.

분류에서Dev

jquery .load가 함수 매개 변수와 함께 작동하지 않습니다.

분류에서Dev

`throwsA`와 함께 사용하면`TypeMatcher`가 작동하지 않습니다.

분류에서Dev

CodeIgniter UPDATE 쿼리가 열 값 추가와 함께 작동하지 않습니다.

분류에서Dev

sync ()와 attach ()가 함께 작동하지 않습니까?

분류에서Dev

JSQMessagesViewController와 GeoFire가 함께 작동하지 않습니까?

분류에서Dev

ToTitleCase () 메서드가 특수 문자와 함께 작동하지 않습니다.

분류에서Dev

Dialogflow agent.add가 promise와 함께 작동하지 않습니다.

분류에서Dev

Material-table CustomSort가 날짜와 함께 작동하지 않습니다.

분류에서Dev

Mat Paginator가 Material Table의 FormArray와 함께 작동하지 않습니다.

분류에서Dev

SQL ORDER BY가 varchar 날짜와 함께 작동하지 않습니다.

분류에서Dev

Navigator.push가 flutter에서 setState와 함께 작동하지 않습니다.

분류에서Dev

클래스가 부모와 함께 jquery를 작동하지 않습니다.

Related 관련 기사

  1. 1

    .htaccess가 파일 태그와 함께 작동하지 않습니다.

  2. 2

    pyautogui와 일정이 함께 작동하지 않습니다.

  3. 3

    찾기와 함께 Jquery 추가가 함께 작동하지 않습니다.

  4. 4

    textAlignment가 supportsRtl false와 함께 작동하지 않습니다.

  5. 5

    @RequestBody가 @JsonProperty와 함께 작동하지 않습니다.

  6. 6

    Homebrew와 함께 postgresql 설치가 작동하지 않습니다.

  7. 7

    SSL_connect ()가 select ()와 함께 작동하지 않습니다.

  8. 8

    Mysql 변수 '@'가 'IF'와 함께 작동하지 않습니다.

  9. 9

    Javascript Alert가 에코와 함께 작동하지 않습니다.

  10. 10

    ProgressBar가 javafx와 함께 작동하지 않습니다.

  11. 11

    tsql : datediff가 DEFAULT getdate ()와 함께 작동하지 않습니다.

  12. 12

    mysqli가 PHP 날짜와 함께 작동하지 않습니다.

  13. 13

    여러 드롭 다운 필터가 반응 js에서 함께 작동하지 않습니다.

  14. 14

    OKHttp Authenticator가 Retrofit 일시 중지 재미와 함께 작동하지 않습니다.

  15. 15

    puppeteer와 함께 작동하도록 querySelectorAll을 가져올 수 없습니다 (정의되지 않은 반환).

  16. 16

    Msbuild ItemGroup 제외가 와일드 카드와 함께 작동하지 않습니다.

  17. 17

    JavaScript forEach 메서드가 Arrow 함수와 함께 작동하지 않습니다.

  18. 18

    jquery .load가 함수 매개 변수와 함께 작동하지 않습니다.

  19. 19

    `throwsA`와 함께 사용하면`TypeMatcher`가 작동하지 않습니다.

  20. 20

    CodeIgniter UPDATE 쿼리가 열 값 추가와 함께 작동하지 않습니다.

  21. 21

    sync ()와 attach ()가 함께 작동하지 않습니까?

  22. 22

    JSQMessagesViewController와 GeoFire가 함께 작동하지 않습니까?

  23. 23

    ToTitleCase () 메서드가 특수 문자와 함께 작동하지 않습니다.

  24. 24

    Dialogflow agent.add가 promise와 함께 작동하지 않습니다.

  25. 25

    Material-table CustomSort가 날짜와 함께 작동하지 않습니다.

  26. 26

    Mat Paginator가 Material Table의 FormArray와 함께 작동하지 않습니다.

  27. 27

    SQL ORDER BY가 varchar 날짜와 함께 작동하지 않습니다.

  28. 28

    Navigator.push가 flutter에서 setState와 함께 작동하지 않습니다.

  29. 29

    클래스가 부모와 함께 jquery를 작동하지 않습니다.

뜨겁다태그

보관