2009-10-20 61 views
1

我使用的應用程序引擎補丁Django,我有這個奇怪的問題從本地存儲運行manage.py dumpdata(工作正常,當我使用--remote選項)問題與本地dumpdata(在Django應用程序引擎修補程序)

我正在運行一個本地開發服務器,它上面有一些測試數據。我可以在管理網站上看到這些數據。 但是運行manage.py dumpdata我得到的是這樣的:

[{"pk": "agZmaWRkbWVyEQsSC2RqYW5nb19zaXRlGAEM", "model": "sites.site", "fields": {"domain": "example.com", "name": "example.com"}}] 

它甚至沒有涉及到什麼我的工作。就好像在運行manage.py dumpdata時一樣,它會加載一個新的dev_appserver,用於從某個不是默認存儲的未知位置讀取數據。

任何想法這個dumpdata來自哪裏?

回答

1

問題它的應用程序引擎補丁manage.py使用比運行dev_appserver.py

缺省時使用的defualt路徑不同的數據存儲路徑是:

  • %TEMP%\ dev_appserver。數據存儲
  • %TEMP%\ dev_appserver.datastore.history

的manage.py用途:

  • %TEMP%\ django_ .datastore
  • %TEMP%\ django_ .datastore.history

這可以通過項目設置進行定製。 ,它是此差異的incharge功能是在\ django的\分貝\後端\ AppEngine上\ base.py:

def get_datastore_paths(settings_dict): 
    """Returns a tuple with the path to the datastore and history file. 

    The datastore is stored in the same location as dev_appserver uses by 
    default, but the name is altered to be unique to this project so multiple 
    Django projects can be developed on the same machine in parallel. 

    Returns: 
    (datastore_path, history_path) 
    """ 
    from google.appengine.tools import dev_appserver_main 
    options = settings_dict['DATABASE_OPTIONS'] 
    datastore_path = options.get('datastore_path', 
     dev_appserver_main.DEFAULT_ARGS['datastore_path'].replace(
      "dev_appserver", "django_%s" % appid)) 
    history_path = options.get('history_path', 
     dev_appserver_main.DEFAULT_ARGS['history_path'].replace(
      "dev_appserver", "django_%s" % appid)) 
    return datastore_path, history_path 
相關問題