首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Django模型:保存时更新字段值

Django模型:保存时更新字段值
EN

Stack Overflow用户
提问于 2021-02-17 07:30:09
回答 1查看 30关注 0票数 0

我有一个通过使用slug的端点访问的模型:

代码语言:javascript
复制
path('test/<str:slug>', TestView.as_view(), name='test_view'),

我想创建一个动态链接,它需要弹头的知识,所以它不能在创建时分配,因为弹头还没有生成。如何更新dynamic_link字段并在创建时更新它?

代码语言:javascript
复制
class TestModel(models.Model):

    name = models.CharField(max_length=1000)
    dynamic_link= models.CharField(max_length=1000, blank=True, null=True)
    slug = AutoSlugField(_('slug'), max_length=150, unique=True, populate_from=('name',))

    def save(self, *args, **kwargs):
        super().save(*args, **kwargs)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-17 10:39:52

试试这个:

代码语言:javascript
复制
   def update_dynamic_link(instance, created, **kwargs):
       if created:
           instance.dynamic_link = self.slug #Put whatever you want to assign
           instance.save(update_fields=['dynamic_link'])

   model.signals.post_save(update_dynamic_link, sender=TestModel)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66233660

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档