मैं जब मैं शुरू में मैं कैसे कि मैं एक साइट है केवलऑटो रूप से भरें जब Django साइट
उत्तर
आप व्यवस्थापक इंटरफ़ेस का उपयोग कर सकते हैं या तो कर सकते हैं syncdb होने लग जाते हैं django_site तालिका पॉप्युलेट करने के लिए, से चाहते हैं के लिए स्थिरता के साथ syncdb खोल, या स्क्रिप्ट (यदि आप एक स्वचालित समाधान की तलाश में हैं)। यह इस प्रकार से खोल से ऐसा करने के लिए (और क्या आप स्क्रिप्ट में डाल दिया होगा) है:
[[email protected] projects]$ python manage.py shell
>>> from django.contrib.sites.models import Site
>>> newsite = Site(name="Test",domain="test.com")
>>> newsite.save()
आप स्वचालित रूप से ऐसा करना चाहते हैं, इस
from django.contrib import sites
from django.db.models import signals
from django.conf import settings
def create_site(app, created_models, verbosity, **kwargs):
"""
Create the default site when when we install the sites framework
"""
if sites.models.Site in created_models:
sites.models.Site.objects.all().delete()
site = sites.models.Site()
site.pk = getattr(settings, 'SITE_ID', 1)
site.name = getattr(settings, 'SITE_NAME', 'Example')
site.domain = getattr(settings, 'SITE_DOMAIN', 'example.com')
site.save()
signals.post_syncdb.connect(create_site, sender=sites.models)
कि कोड जब भी चलाने के लिए की जरूरत है की कोशिश एक प्रबंधन कमांड निष्पादित किया जाता है। तो आप इसे किसी भी ऐप के लिए management/__init__.py
में डाल सकते हैं। तो बस अपने settings.py
करने के लिए SITE_ID
, SITE_NAME
, और SITE_DOMAIN
जोड़ें।
सरल समाधान है कि डिफ़ॉल्ट स्थान पर आ जाएगी साइटें अनुप्रयोग के लिए एक initial_data.json स्थिरता बनाने के लिए है।
उदाहरण के लिए, /myproject/myapp/fixtures/initial_data.json में मेरी स्थिरता:
[
{
"model": "sites.site",
"pk": 1,
"fields": {
"domain": "myproject.mydomain.com",
"name": "My Project"
}
}
]
एक छोटी सी टिप्पणी: क्योंकि यह पूरी परियोजना के लिए आम डेटा है, यह एक अच्छा विचार स्टोर करने के लिए हो सकता है/MyProject/फिक्स्चर/या करने के लिए किसी एप्लिकेशन/MyProject/कॉमन्स साथ/(जैसे मैं करता हूँ) के बजाय भंडारण बस कुछ अनुप्रयोग के लिए स्थिरता। यह डेटा को ढूंढना आसान बनाता है और ऐप्स को थोड़ा और पुन: प्रयोज्य बनाता है।
एक दूसरा नोट: Django एकाधिक ऐप्स में एकाधिक प्रारंभिक_डेटा.जेसन फिक्स्चर का उपयोग करने की अनुमति देता है (प्रारंभिक_डाटा.जेसन और प्रारंभिक_डाटा.यामएल फिक्स्चर के मिश्रित सेट का उपयोग करने के रूप में अपेक्षित काम नहीं किया गया है: पी)। सिंकडब चलाए जाने पर वे सभी डेटाबेस को पूर्व-पॉप्युलेट करने के लिए स्वचालित रूप से उपयोग किए जाएंगे।
कुछ संदर्भों:
- Django - Providing initial data with fixtures
- दूसरी टिप्पणी पर a codespatter.com blog post
- 1. django व्यवस्थापक साइट से लिंक
- 2. Django ऑटो स्लग
- 3. jQuery रूप से भरें चयन सूची
- 4. एक Django साइट
- 5. सार्वजनिक django साइट
- 6. ऑटो ईमेल प्रोग्रामेटिक रूप से
- 7. ऑटो स्क्रॉल नीचे जब अतिप्रवाह ऑटो
- 8. मेरी Django साइट होस्टिंग
- 9. गतिशील रूप से Django
- 10. Django flatpages डिफ़ॉल्ट साइट
- 11. साइट कॉन्फ़िगरेशन django-admin
- 12. उपयोग forms.TextArea Django व्यवस्थापक साइट
- 13. प्रोग्रामेटिक रूप से अस्थायी रूप से ऑटो-अपडेट
- 14. रिकार्ड ऑटो वृद्धि कैसे करें और एक्सेल में भरें?
- 15. ऑनपेरेंसक्लिक ट्रिगर होने पर ListPreference गतिशील रूप से कैसे भरें?
- 16. अन्य साइट से फेसबुक पेज की तरह ऑटो कैसे करें?
- 17. Django: साइट-वाइड यूआरएल उपसर्ग
- 18. Django - एकाधिक साइट्स साइट कैशिंग
- 19. स्वचालित रूप से यादृच्छिक डेटा के साथ आदिम गुण भरें?
- 20. MySQL का ऑटो-रीकनेक्ट django
- 21. Django टेम्पलेट्स में ऑटो से बचने के लिए कैसे?
- 22. मिनिप्रोफाइलर: साइट अतुलनीय रूप से तेज़ है
- 23. स्थानीय रूप से Django की साइट फ्रेमवर्क का परीक्षण कैसे करें
- 24. स्वचालित रूप से django मॉडल
- 25. django दस्तावेज स्थानीय रूप से
- 26. Django: रिलीज से पहले ऑटो minifying css/js फ़ाइलें
- 27. 2 भाषाओं के साथ Django साइट
- 28. कैसे जब Django-पृष्ठांकन
- 29. django-पंजीकरण ऑटो उपयोगकर्ता उपयोगकर्ता प्रोफाइल
- 30. 'str' ऑब्जेक्ट कोई विशेषता 'संकल्प' है जब संचालन व्यवस्थापक साइट
मेरे समझ के साथ कि जुड़नार ऐसा करने का पसंदीदा तरीका हो रहा है। नीचे @ Askell का जवाब देखें। – Josh