0

私は公式zc.buildout文書といくつかのタットをざっと読みましたが、次の質問に対する明確な答えが見つかりませんでした。

これからすべてのDjangoプロジェクト(Django1.4)で次の変更を自動化したいとしますが、これらの変更はすべてbuildout.cfgファイルだけで実行できますか?

実行した後、実装するデフォルトのstartprojectの変更$ django-admin.py startproject my_project例:

$ mkdir ~/path/to/my_project/my_project/db

settings.py:

import os
ROOT_PATH = os.path.dirname(os.path.abspath(__file__))

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(ROOT_PATH, 'db/my_project.db'),                      
        'USER': '',                     
        'PASSWORD': '',                  
        'HOST': '',                    
        'PORT': '', 
    }
}

私は現在、ソリューションとしてDjangoソースの1.4ブランチの独自のカスタマイズされたディストリビューションをビルドして使用していますが、ビルドアウトを使用してそれを実行できるかどうかを知っておくと便利です。

4

2 に答える 2

1

Martijn の回答に加えて、buildout はディレクトリを問題なく作成できます。http://pypi.python.org/pypi/z3c.recipe.mkdir/をご覧ください

これは、私が定期的に使用するタスクの 1 つです (ログファイル用の var/log/、sqlite ファイル用の var/sqlite/ dir の作成など)。

于 2012-10-23T11:52:29.117 に答える
1

あなたが望むものは、Buildout の一連のユース ケースの一部ではありません。

プロジェクトの開始時に生成されたコードをカスタマイズしたいのに対し、ビルドアウトは再現可能な展開または開発環境を提供することを目的としています。

前者は1 人の開発者が使用し、後者は複数の開発者または複数のプロダクション マシンを同じソフトウェア スタックで稼働させることを目的としています。

とはいえ、パーツの実行時にこれらのファイルの新しいバージョンを書き出すビルドアウト レシピを構築することは確かに可能です。たとえば、collective.recipe.templateビルドアウトが実行されるたびに特定の場所に配置されるテンプレート ファイルを指定できます。これらのファイルが変更された場合、それらのファイルが上書きされることに注意してください。

于 2012-10-22T14:02:56.817 に答える