<prompt> Andika programu ya wavuti ya Python Django inayotekelezea tovuti ya msingi ya e-commerce yenye orodha za bidhaa, utendaji wa gari la ununuzi, na usindikaji wa malipo.  <response>: Kuunda programu kamili ya wavuti ya Django yenye vipengele vyote ulivyotaja kunahitaji msimbo na maelezo mengi. Walakini, ninaweza kukupa muhtasari wa jinsi ya kuunda programu kama hii pamoja na vijisehemu vya sampuli za msimbo.1. Sanidi mradi na programu yako ya Django:Kwanza, hakikisha una Python na Django iliyosanikishwa kwenye mfumo wako. Kisha, unda mradi mpya wa Django na programu mpya ndani ya mradi huo k.m., ecommerce.bashidjango-admin startproject my_ecommerce_projectcd my_ecommerce_projectpython manage.py startapp ecommerce2. Unda miundo ya bidhaa na vitu vya gari la ununuzi:Katika ecommercemodels.py, fafanua aina mbili: Bidhaa na CartItem. chatukutoka kwa mifano ya kuagiza ya django.dbdarasa la Bidhaamifano.Model: jina mifano.CharFieldmax_length100 maelezo mifano.TextField bei mifano.Sehemu ya decimalidadi_za_max10, sehemu_ya_desimali2 picha mifano.Sehemu ya Pichaupload_tobidhaa def __str__binafsi: rudisha.jinadarasa CartItemmodels.Model: product models.ForeignKeyBidhaa, on_deletemodels.CASCADE wingi mifano.IntegerFieldchaguo-msingi1 def __str__binafsi: return fself.product.name - self.quantity3. Unda mionekano ya kuorodhesha bidhaa, kuongezakuondoa vitu kutoka kwenye rukwama, na kuchakata malipo:Katika ecommerceviews.py, tengeneza maoni kwa kila moja ya vipengele hivi. chatukutoka kwa django.kuagiza njia za mkato kutoa, kuelekeza, kupata_object_or_404kutoka kwa .models kuagiza Bidhaa, CartItemdef product_listombi: bidhaa Bidhaa.objects.all return renderrequest, ecommerceproduct_list.html, products: productsdef add_to_cartombi, product_id: product get_object_or_404Bidhaa, idproduct_id kipengee_cha_gari, kimeundwa CartItem.objects.get_or_createbidhaabidhaa ikiwa haijaundwa: cart_item.quantity 1 cart_item.save rudisha kuelekeza kwingineecommerce:product_listdef remove_from_cartrequest, cart_item_id: cart_item get_object_or_404CartItem, idcart_item_id cart_item.delete rudisha uelekeo upyaecommerce:cartdef cart ombi: cart_items CartItem.objects.all total_price jumla item.product.price item.quantity kwa bidhaa katika cart_items return renderombi, ecommercecart.html, cart_items: cart_items, total_price: total_pricedef process_paymentombi: Tekeleza mantiki ya usindikaji wa malipo hapa k.m., kwa kutumia Stripe au API za PayPal kupita4. Unda violezo vya kuorodheshwa kwa bidhaa na rukwama ya ununuzi:Unda faili zifuatazo za HTML katika ecommercetemplatesecommerce:- base.html: Kiolezo cha msingi chenye vipengele vya kawaida kama vile kichwa na kijachini.- product_list.html: Kiolezo cha kuonyesha orodha ya bidhaa.- cart.html: Kiolezo cha kuonyesha gari la ununuzi.5. Sanidi uelekezaji wa URL:Katika ecommerceurls.py, fafanua URL kwa kila mwonekano. chatukutoka kwa django.urls njia ya kuingizakutoka. kuagiza maoniapp_name ecommerceurlpatterns path, views.product_list, nameorodha_ya_bidhaa, pathadd_to_cart, views.add_to_cart, nameongeza_to_cart, pathremove_from_cart, views.remove_from_cart, nameremove_from_cart, njiagari, views.cart, namecart, njiamchakato_malipo, views.process_payment, nameprocess_payment,6. Sanidi mipangilio:Ongeza programu yako kwenye orodha ya ALLED_APPS katika my_ecommerce_projectsettings.py. Pia, sanidi mipangilio ya midia ya kushughulikia picha zilizopakiwa. chatuALLED_APPS ... ecommerce,MEDIA_URL mediaMEDIA_ROOT os.path.joinBASE_DIR, media7. Endesha uhamishaji na uanzishe seva ya ukuzaji:Endesha amri zifuatazo ili kuunda meza za hifadhidata na uanzishe seva ya ukuzaji.bashipython manage.py makemigrationspython manage.py kuhamapython manage.py runserverSasa unapaswa kuwa na tovuti ya msingi ya biashara ya mtandaoni iliyo na orodha za bidhaa na utendaji wa gari la ununuzi. Ili kutekeleza uchakataji wa malipo, unaweza kutumia maktaba za watu wengine kama django-stripe au django-paypal.Tafadhali kumbuka kuwa hii ni hatua ya kuanzia, na kuna maboresho mengi unayoweza kufanya, kama vile kuongeza uthibitishaji wa mtumiaji, kuboresha UIUX, na kuboresha utendaji. 