SORU
26 EKİM 2009, PAZARTESİ


Nasıl Django yerel üretim vs ayarlarını yönetmek için?

Django acemi soru: bir
Yerel kalkınma için ayarlar ve üretim sunucusu kullanım için önerilen yolu nedir? Bazıları (gibi Sabitler, vb) değiştirilebilir/erişilen, ama bazıları (gibi yollara statik dosyalar) gerek kalır farklı, ve bu nedenle olmamalı üzerine her seferinde yeni kod dağıtılmış...

Şu anda, tüm sabitleri settings.py için ekliyorum. Ama her zaman bazı sürekli değiştiriyorum yerel üretim sunucusuna kopyalayın ve belirli değişiklikler üretim için dosyayı düzenlemek zorunda kalıyorum... :(

Bu soruya standart bir cevap yok gibi görünüyor, en popüler yöntem kabul ettim. Edit:

CEVAP
10 Mart 2013, Pazar


Two Scoops of Django: Best Practices for Django 1.5 ayarlar için sürüm denetimi dosyalarını kullanarak ve ayrı bir dizin: dosyaların boyutunu gösteriyor

project/
    app1/
    app2/
    project/
        __init__.py
        settings/
            __init__.py
            base.py
            local.py
            production.py
    manage.py

base.py dosya local.py production.py siteye özel ayarlar varken ortak ayarlar (MEDİA_ROOT veya ADMİN gibi) içerir:

Base dosyası settings/base.py:

INSTALLED_APPS = (
    # common apps...
)

Yerel kalkınma ayarları settings/local.py dosya:

from project.settings.base import *

DEBUG = True
INSTALLED_APPS  = (
    'debug_toolbar', # and other apps for local development
)

Dosya üretiminde ayarları settings/production.py dosya:

from project.settings.base import *

DEBUG = False
INSTALLED_APPS  = (
    # other apps for production site
)

Django çalıştırdığınızda, --settings seçeneği ekleyin:

# Running django for local development
$ ./manage.py runserver 0:8000 --settings=project.settings.local

# Running django shell on the production site
$ ./manage.py shell --settings=project.settings.production

Kitabın yazarları da Github a sample project layout template koyduk.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Menglong Tav

    Menglong Tav

    18 Temmuz 2010
  • theKGB65

    theKGB65

    24 Aralık 2007
  • TSE

    TSE

    12 Kasım 2012