এমন একটি সমাধানের জন্য যা আপনার কাছে UUIDField
প্রাথমিক কী হিসাবে থাকা সত্ত্বেও কার্যকর হয় (যা অন্যরা উল্লেখ করেছেন None
যে আপনি যদি ওভাররাইড করেন না তবে save
), আপনি জ্যাঙ্গোর পোস্ট_সেভ সিগন্যালে প্লাগ করতে পারেন । আপনার এই যোগ models.py :
from django.db.models.signals import post_save
from django.dispatch import receiver
@receiver(post_save, sender=MyModel)
def mymodel_saved(sender, instance, created, **kwargs):
if created:
# do extra work on your instance, e.g.
# instance.generate_avatar()
# instance.send_email_notification()
pass
এই কলব্যাকটি save
পদ্ধতিটিকে অবরুদ্ধ করবে , সুতরাং আপনি প্রতিক্রিয়াটি তারের উপর ফিরে প্রেরণের আগে আপনি ট্রিগার বিজ্ঞপ্তি বা মডেলটিকে আরও আপডেট করার মতো জিনিসগুলি করতে পারেন, আপনি ফর্ম ব্যবহার করছেন বা এজাজ কলগুলির জন্য জ্যাঙ্গো আরএসটি ফ্রেমওয়ার্ক framework অবশ্যই, দায়িত্বের সাথে ব্যবহার করুন এবং আপনার ব্যবহারকারীদের অপেক্ষা না করে কাজের ভারে ভারী কাজগুলি অফলোড করুন :)
UUIDField pk