使用Django在Google App Engine中获取新功能

时间:2012-03-03 15:57:14

标签: python django html5 google-app-engine

我正在尝试使用GAE将一些HTML5组件放入Django。 我感谢它不受支持,但

等网站

http://forrst.com/posts/HTML5_Form_Widgets_in_Django-mTT

暗示我可以用Django方式做到这一点。哪个应该朝着这个方向而不是使用裸HTML。但是我似乎无法在加载

时公开正确的模块
from django.forms.widgets import Input

我得到以下内容:

django undefined, Input undefined

<type 'exceptions.ImportError'>: No module named widgets
      args = ('No module named widgets',)
      message = 'No module named widgets' 

However is one does help(django.forms.widgets) 

NAME
    django.newforms.widgets - HTML Widget classes

FILE
    /home/xxx/google_appengine/lib/django_0_96/django/newforms/widgets.py

CLASSES
    __builtin__.object
        Widget
            CheckboxInput
            MultiWidget
                SplitDateTimeWidget
            Select
                NullBooleanSelect
                RadioSelect
            SelectMultiple
                CheckboxSelectMultiple
            Textarea
    Input(Widget)
        FileInput
        HiddenInput
            MultipleHiddenInput
        PasswordInput
        TextInput

我做错了什么?

感谢。

1 个答案:

答案 0 :(得分:0)

您需要使用正确版本的Django,使用use_library()指定,在此处记录: http://code.google.com/appengine/docs/python/tools/libraries.html

您最有可能想使用1.3

但请注意,Django模型不适用于App Engine。看起来你正在使用表单,这些表单本身应该没问题,但是如果你使用ModelForms,你将不得不使用djangoforms.ModelForm,它可以与App Engine数据库模型一起使用。

另一种选择是使用Django-nonrel,它允许你在App Engine上使用Django模型,尽管功能有一些限制。