4

我正在尝试在 Google App Engine 上为 Python 设置由 Google 生成的名为“Dredit”的示例应用程序。此处的文档: https ://developers.google.com/drive/examples/python

该应用程序应该能够从用户的 Google Drive 文件夹中打开、创建和编辑文件。

除了主页控制台中出现的一些 JavaScript 错误外,几乎所有东西似乎都在工作。此外,当我尝试创建新文档时,我无法更改文档的标题,也无法编辑现有文档的名称。但是,它确实允许我编辑任何文档的内容。要亲自查看,该应用程序在这里: http ://www.dredit-python-0515.appspot.com 。您需要一个 Google 帐户才能登录。

Chrome 的 JS 控制台和 Firebug 中的错误是不同的,但它们似乎以我的项目目录中的 angularJS 文件为中心。

Chrome中的错误是:

TypeError:无法 在 http://dredit-python-

的 Object.service.state (http://dredit-python-0515.appspot.com/js/services.js:135:37)处读取未定义的属性“可编辑”-

0515.appspot.com/lib/angular-1.0.0/angular-1.0.0.js:6128:19

在操作员处。| (http://dredit-python-0515.appspot.com/lib/angular-1.0.0/angular-1.0.0.js:5560:74)

在 http://dredit-python-0515.appspot.com/ lib/angular-1.0.0/angular-1.0.0.js:5879:14

在 Object.fn (http://dredit-python-0515.appspot.com/lib/angular-1.0.0/angular-1.0. 0.js:4788:22)

在 Object.Scope.$digest (http://dredit-python-0515.appspot.com/lib/angular-1.0.0/angular-1.0.0.js:7654:38)

在 Object.Scope.$apply (http://dredit-python-0515.appspot.com/lib/angular-1.0.0/angular-1.0.0.js:7855:24)

在完成请求 (http://dredit-python-0515.appspot.com/lib/angular-1.0.0/angular-1.0.0.js:8844:20)

完成请求 (http://dredit-python-0515. appspot.com/lib/angular-1.0.0/angular-1.0.0.js:8984:7)

在 XMLHttpRequest.xhr.onreadystatechange (http://dredit-python-0515.appspot.com/lib/angular-1.0 .0/angular-1.0.0.js:8954:11)

任何帮助是极大的赞赏!

4

1 回答 1

1

我也无法让您的应用程序运行,但查看堆栈跟踪:

错误来自线路

} else if (!doc.info.editable) {
   return EditorState.READONLY;
}

http://dredit-python-0515.appspot.com/js/services.js

调用此代码时,未定义 doc.info。

无论出于何种原因,在设置 doc.info 对象的“createEditor”函数之前调用“state”函数。

最简单的解决方法是将第 135 行的“else if”替换为

} else if (doc.info && !doc.info.editable) {
于 2012-12-21T16:25:11.960 回答