I decided to try this project:
http://code.google.com/p/appengine-admin/wiki/QuickStart
For the sake of experiment, I took the demo guestbook that came with the App Engine. The import park is as follows:
import cgi import datetime import wsgiref.handlers from google.appengine.ext import db from google.appengine.api import users from google.appengine.ext import webapp from google.appengine.ext.webapp.util import run_wsgi_app from google import appengine_admin
The database model and administrator look like this:
class Greeting(db.Model): author = db.UserProperty() content = db.StringProperty(multiline=True) date = db.DateTimeProperty(auto_now_add=True) class AdminGreeting(appengine_admin.ModelAdmin): model = Greeting listFields = ('author','content','date') editFields = ('author','content','date') appengine_admin.register(AdminGreeting)
However, I get this exception when trying to start the site:
File "/home/<username>/python/google_appengine/google/appengine/tools/ dev_appserver.py", line 2875, in _HandleRequest base_env_dict=env_dict) File "/home/<username>/python/google_appengine/google/appengine/tools/dev_appserver.py", line 387, in Dispatch base_env_dict=base_env_dict) File "/home/<username>/python/google_appengine/google/appengine/tools/dev_appserver.py", line 2162, in Dispatch self._module_dict) File "/home/<username>/python/google_appengine/google/appengine/tools/dev_appserver.py", line 2080, in ExecuteCGI reset_modules = exec_script(handler_path, cgi_path, hook) File "/home/<username>/python/google_appengine/google/appengine/tools/dev_appserver.py", line 1976, in ExecuteOrImportScript exec module_code in script_module.__dict__ File "/home/<username>/python/google_appengine/demos/guestbook/guestbook.py", line 37, in <module> appengine_admin.register(AdminGreeting) File "/home/<username>/python/google_appengine/google/appengine_admin/model_register.py", line 120, in register modelAdminInstance = modelAdminClass() File "/home/<username>/python/google_appengine/google/appengine_admin/model_register.py", line 64, in __init__ self._extractProperties(self.listFields, self._listProperties) File "/home/<username>/python/google_appengine/google/appengine_admin/model_register.py", line 76, in _extractProperties storage.append(PropertyWrapper(getattr(self.model, propertyName), propertyName)) File "/home/<username>/python/google_appengine/google/appengine_admin/model_register.py", line 17, in __init__ logging.info("Caching info about property '%s'" % name) File "/usr/lib/python2.6/logging/__init__.py", line 1451, in info root.info(*((msg,)+args), **kwargs) File "/usr/lib/python2.6/logging/__init__.py", line 1030, in info self._log(INFO, msg, args, **kwargs) File "/usr/lib/python2.6/logging/__init__.py", line 1142, in _log record = self.makeRecord(self.name, level, fn, lno, msg, args, exc_info, func, extra) File "/usr/lib/python2.6/logging/__init__.py", line 1117, in makeRecord rv = LogRecord(name, level, fn, lno, msg, args, exc_info, func) File "/usr/lib/python2.6/logging/__init__.py", line 272, in __init__ from multiprocessing import current_process File "/home/<username>/python/google_appengine/google/appengine/tools/dev_appserver.py", line 1089, in decorate return func(self, *args, **kwargs) File "/home/<username>/python/google_appengine/google/appengine/tools/dev_appserver.py", line 1736, in load_module return self.FindAndLoadModule(submodule, fullname, search_path) File "/home/<username>/python/google_appengine/google/appengine/tools/dev_appserver.py", line 1089, in decorate return func(self, *args, **kwargs) File "/home/<username>/python/google_appengine/google/appengine/tools/dev_appserver.py", line 1638, in FindAndLoadModule description) File "/home/<username>/python/google_appengine/google/appengine/tools/dev_appserver.py", line 1089, in decorate return func(self, *args, **kwargs) File "/home/<username>/python/google_appengine/google/appengine/tools/dev_appserver.py", line 1589, in LoadModuleRestricted description) File "/usr/lib/python2.6/multiprocessing/__init__.py", line 83, in <module> import _multiprocessing ImportError: No module named _multiprocessing INFO 2009-04-25 23:34:27,628 dev_appserver.py:2934] "GET / HTTP/1.1" 500 -
Any idea what could go wrong?