Google App Engine用フレームワーク Kay の新しいURLマッピングによる汎用ビューグループの設定

Google App Engine用フレームワーク Kay の新しいURLマッピングによる汎用ビューグループの設定 | 山本隆の開発日誌」より。


Google App Engine用フレームワーク Kay の新しいURLマッピング導入されたことで、汎用ビューグループを古い方式のURLマッピングで使用していると問題が発生するようです。

ドキュメントの例に従い、古い方式でURLマッピングの設定をすると次のようになります。

myapp/urls.py

def make_rules():
return [
EndpointPrefix('myapp/', [
Rule('/', endpoint='index'),
]),
]

all_views = {
'myapp/index': myapp.views.index,
}

class MyCRUDViewGroup(generics.CRUDViewGroup):
model = MyModel
form = MyForm

view_groups = [MyCRUDViewGroup()]

この場合、「http://localhost:8080/」にアクセスすると、404エラーになります。

indexビューの設定が失われてしまっているようです。

新しいURLマッピングの方式で以下のように設定すると、正しく動作します。

myapp/urls.py

view_groups = [
ViewGroup(
Rule('/', endpoint='index', view='myapp.views.index'),
),
MyCRUDViewGroup(),
]