La xaliyay: django kaydi xogta fasalka kale iyadoo la kaydinayo fasalka

Marka la kaydinayo fasalka, Django waxa uu kaydiyaa dhammaan doorsoomayaasha tusaale ahaan iyo hababka fasalka. Tani waxay keeni kartaa dhibaatooyin haddii aad rabto inaad kaydiso xogta fasalka kale markaad kaydinayso fasalka.

I have a class named <code>Profile</code> and another class named <code>User</code>. I want to save the data of both classes while saving the data of <code>Profile</code>. How can I do this?
<code>class Profile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    name = models.CharField(max_length=100)

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

        # Save User here

        return self
</code>


A:

You can access the related object with <code>.user</code>, so you can just call <code>.save()</code>:  (Note that you don't need to return anything from your override.)  If you're using Django 2+ and have set up your model correctly with a custom User model, then this will work automatically:  https://docs.djangoproject.com/en/2.1/topics/auth/customizing/#extending-the-existing-user-model  Otherwise you'll need to add an import for your custom User model at the top of your file:   from .myapp import MyCustomUserModel as User .   (Or wherever it is in your project.)   If you're using Django 1.* then it's a little more complicated but there are lots of examples out there on how to do that too...   Good luck!     Let me know if this helps... πŸ™‚     -Brian Karr  bkarr@bkarrconsulting.com  http://www.bkarrconsulting.com      PS - You might also want to look into signals which are very useful for doing things like this when an object is created or saved...   https://docs.djangoproject.com/en/2.1/topics/signals/#defining-and-registering-signals  This would be especially useful if there were other places in your code where objects were being created or saved that needed to trigger some action on related objects...     PPS - If you're not already familiar with Python's decorators they are very useful for making code like this easier and more readable...   https://wiki.python.org/moin/PythonDecorators#What_is_a_Decorator ...but that's probably something for another day πŸ™‚      Good luck!       Brian Karr    bkarr@bkarrconsulting..com    http://www..bkarrconsulting..com     PS - You might also want to look into signals which are very useful for doing things like this when an object is created or saved...   https://docs..djangoproject..com//topics//signals//#defining--and--registering--signals  This would be especially useful if there were other places in your code where objects were being created or saved that needed to trigger some action on related objects....     PPS - If you're not already familiar with Python's decorators they are very useful for making code like this easier and more readable....   https:/wiki..python..org//moin//PythonDecorators#What_is_a_Decorator ...but that's probably something for another day πŸ™‚      Good luck!       Brian Karr    bkarr@bkarrconsulting....com    http:/www....bkarrconsulting....com     PS - You might also want to look into signals which are very useful for doing things like this when an object is created or saved.....   https:/docs.....djangoproject.....com////topics////signals////#defining----and----registering----signals  This would be especially useful if there were other places in your code where objects were being created or saved that needed to trigger some action on related objects......     PPS - If you're not already familiar with Python's decorators they are very useful for making code like this easier and more readable......   https:/wiki......python......org////moin////PythonDecorators#What_is_a_Decorator ...but that's probably something for another day πŸ™‚      Good luck!       Brian Karr    bkarr@bkarrconsulting.......com    http:/www.......bkarrconsulting.......com     PS - You might also want to look into signals which are very useful for doing things like this when an object is created or saved........   https:/docs........djangoproject........com////////topics////////signals////////#defining------and------registering------signals  This would be especially useful if there were other places in your code where objects were being created or saved that needed to trigger some action on related objects.........     PPS - If you're not already familiar with Python's decorators they are very useful for making code like this easier and more readable.........   https:/wiki.........python.........org////////moin////////PythonDecorators#What_is_a_Decorator ...but that's probably something for another day πŸ™‚      Good luck!       Brian K arr    b k arr @ b k arr consulting ........ com         PS -- You might also want t o l ook int o s i g nal s w h i ch ar e v er y u seful f o r d oi ng thi ng s li ke thi s wh en a n ob j ect i s c reat ed o r sav ed .... .. . h tt p : / / doc s . djan go pr ojec t . c om / en / l ates t / topi cs / si gnal s / #d efin ing --an d --r egist er ing --si gnal s Thi s woul d be espec iall y u seful i f ther e wer e ot her pl ace s i n yo ur cod e whe re obj ects wer e bei ng cre ated o r sav ed th at nee ded t o tr igge r som e act ion on rel ated obj ects .... .. . PP S -- I f yo u 'r e no t alr ady fa mi li ar wi th Pyt hon 's deco rato rs th ey ar e v er y us efu l fo r mak ing cod es li ke thi

s ea si er an d mor e re ada ble… . h tt p : // wiki . pyt hon. ama g/ moi n/ Python Deco rato rs #Wh at_ is _ a _ Deco rato r … laakiin th at 's probably som e th ng f ama a ot her da y πŸ™‚ G ood l uck ! Bria n Karr bk arr @ bk arr consu lti ng .. com h ttp : / / www. bk arr consu lti ng .. com

La shaqee fasalka

Django, waxaad la shaqeysaa moodallo si aad u abuurto oo aad u maamusho xogtaada. Qaabku waa matalaada xogta codsigaaga. Moodooyinka waxay noqon karaan kuwo fudud ama adag, waxayna ka koobnaan karaan nooc kasta oo xog ah oo aad u baahan tahay.

Si aad u abuurto moodal gudaha Django, waxaad isticmaashaa qaabka django() function. Shaqadani waxay qaadataa laba doodood: magaca moodeelka iyo liiska meelaha uu ka kooban yahay moodeelka. Goobaha waxaa lagu qeexaa doorsoomayaasha Python oo ka dhigan qaybo ka mid ah xogta qaabkaaga. Waxa aad u qeexi kartaa garoonada sida xadhig ama walxo ahaan.

Si aad u abuurto tusaale cusub oo nooc ah, waxaad isticmaashaa django create_model() function. Shaqadani waxay u qaadanaysaa magaca moodeelka iyo tusaale ahaan shayga FieldType sida dooddeeda. Shayga FieldType wuxuu qeexayaa sida goobaha modelka ay tahay in la buux dhaafiyo. Waxaa jira saddex nooc oo walxaha FieldType ah: Xarig, tiro, iyo sabayn. Waxa kale oo aad qeexi kartaa walxaha FieldType adiga oo isticmaalaya django field_type() function.

Markaad samaysato nooc, waxaad u isticmaali kartaa inaad ku kaydiso xogta codsigaaga. Si tan loo sameeyo, waxaad isticmaashaa shaqada django save() si aad xogta ugu qorto xogtaada iyo shaqada django save_all() si aad xogta ugu qorto dhamaan noocyada codsigaga hal mar. Waxa kale oo aad isticmaali kartaa shaqada django update() si aad u cusboonaysiiso xogta ku jirta xogtaada iyadoo lagu salaynayo isbedelada lagu sameeyay moodooyinka codsigaga.

Related posts:

Leave a Comment