24

最近、OpenShiftでDjangoプロジェクトをエクスポートしようとしましたが、効果がありませんでした。私が見つけた唯一のソリューションは、「ビルド済み」のソリューション(https://github.com/openshift/django-exampleなど)でした。

プロジェクトに適応させるために数時間を費やしましたが、常に内部サーバーエラーが発生しました。

では、openshiftでdjangoをセットアップする方法は?

4

1 に答える 1

30

私はついにそれを理解しました。最初に行うことは、openshiftアプリを起動し、setup.pyファイルを編集することです。

rhc app create -a APPNAME -t python-2.6
cd APPNAME
vim setup.py

「install_requires=['Django>=1.3']」のコメントを解除する必要があります

次に、サーバーにコミットできます。

git commit -a -m "Initialization"
git push

デフォルトではdjango1.4がインストールされますが、setup.pyで正しいインストール要件を持つ別のバージョンを選択できると思います。とにかく、次の場合は、コンピューターとサーバーで同じdjangoバージョンを実行する必要があります。

djangoプロジェクトを作成します:

cd wsgi
django-admin.py startproject PROJECTNAME

次に、ファイルアプリケーションを編集し、コンテンツ全体を次のように置き換える必要があります。

#!/usr/bin/python
import os, sys

os.environ['DJANGO_SETTINGS_MODULE'] = 'PROJECTNAME.settings'
sys.path.append(os.path.join(os.environ['OPENSHIFT_REPO_DIR'], 'wsgi',
    'PROJECTNAME'))

virtenv = os.environ['APPDIR'] + '/virtenv/'
os.environ['PYTHON_EGG_CACHE'] = os.path.join(virtenv, 'lib/python2.6/site-packages')
virtualenv = os.path.join(virtenv, 'bin/activate_this.py')

try:
    execfile(virtualenv, dict(__file__=virtualenv))
except IOError:
    pass

#
# IMPORTANT: Put any additional includes below this line.  If placed above this
# line, it's possible required libraries won't be in your searchable path
# 
from django.core.handlers import wsgi
application = wsgi.WSGIHandler()

最後に、変更をコミットできます。

cd ..
git add .
git commit -a -m "Project Creation"
git push

djangoのウェルカムページが表示されます。これで、設定を編集して、不要なコンテンツなしでdjangoアプリをインポートできます

于 2012-07-27T19:02:42.240 に答える