2013-04-04 97 views
2

我想部署我的第一个Django应用程序使用OpenShift。到目前为止,除了当我添加我的数据库时,一切都很顺利。在哪里存储SQLite数据库使用Openshift

this article我发现我应该将数据库存储在数据目录中(例如appname> data> database.db)。

我的settings.py包括:

'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. 
'NAME': os.path.join(os.environ['OPENSHIFT_DATA_DIR'], 'sqlite3.db'), # Or path to database file if using sqlite3. 

这看起来不错。当我得到我的错误,我看到的路径:

'/var/lib/openshift/515ccff04382ec2acd00014c/app-root/data/sqlite3.db' 

这也看起来不错。但我仍然得到错误:

no such table: openshift_inventories 

现在,我已经添加了表的分贝,但有一些特殊的执行syncdb命令或一些这样的,我要运行,而不是仅仅推动这一在线?这里主要是新手。我学会了今天“承诺”和“推动”这两个词。我很欣赏你们都有的想法。

最佳, 布雷特

回答

3

本博客文章可能会帮助你。

http://appsembler.com/blog/django-deployment-using-openshift/

你会因为他增加了执行syncdb命令提交挂钩后看到。

请注意他的说明适用于2.6盒式磁带,由于我们设置虚拟环境的方式发生变化,因此2.7和3.3盒式磁带的设置将有所不同。

+1

太棒了!下班后我会检查一下。感谢发布:) – 2013-04-04 21:01:45

+2

但你没有接受(大概有帮助)的答案,你也没有投票? – hd1 2013-05-19 21:32:52

+0

我认为答案缺少一个重要的观点,即在2.7 python中使用openshift sqlite3名称设置变量解决什么问题。 – Timo 2014-05-22 19:48:11