# Path: mongonaut/views.py
# class IndexView(MongonautViewMixin, ListView):
# class DocumentListView(MongonautViewMixin, FormView):
# class DocumentDetailView(MongonautViewMixin, TemplateView):
# class DocumentEditFormView(MongonautViewMixin, FormView, MongonautFormViewMixin):
# class DocumentAddFormView(MongonautViewMixin, FormView, MongonautFormViewMixin):
# class DocumentDeleteView(DeletionMixin, MongonautViewMixin, TemplateView):
#     def get_queryset(self):
#     def get_qset(self, queryset, q):
#     def get_queryset(self):
#     def get_initial(self):
#     def get_context_data(self, **kwargs):
#     def post(self, request, *args, **kwargs):
#     def get_context_data(self, **kwargs):
#     def get_success_url(self):
#     def get_context_data(self, **kwargs):
#     def get_form(self): #get_form(self, Form) leads to "get_form() missing 1 required positional argument: 'Form'" error."
#     def get_success_url(self):
#     def get_context_data(self, **kwargs):
#     def get_form(self):
#     def get_success_url(self):
#     def get_object(self):


from django.conf.urls import url
from mongonaut import views

urlpatterns = [
    url(
        regex=r'^$',
        view=views.IndexView.as_view(),
        name="index"
    ),
    url(
        regex=r'^(?P<app_label>[_\-\w\.]+)/(?P<document_name>[_\-\w\.]+)/$',
        view=views.DocumentListView.as_view(),
        name="document_list"
    ),
    url(
        regex=r'^(?P<app_label>[_\-\w\.]+)/(?P<document_name>[_\-\w\.]+)/add/$',
        view=views.DocumentAddFormView.as_view(),
        name="document_detail_add_form"
    ),
    url(
        regex=r'^(?P<app_label>[_\-\w\.]+)/(?P<document_name>[_\-\w\.]+)/(?P<id>[\w]+)/$',

        view=views.DocumentDetailView.as_view(),
        name="document_detail"
    ),
    url(
        regex=r'^(?P<app_label>[_\-\w\.]+)/(?P<document_name>[_\-\w\.]+)/(?P<id>[\w]+)/edit/$',
        view=views.DocumentEditFormView.as_view(),
        name="document_detail_edit_form"
    ),
    url(
        regex=r'^(?P<app_label>[_\-\w\.]+)/(?P<document_name>[_\-\w\.]+)/(?P<id>[\w]+)/delete/$',

# Path: mongonaut/views.py
# class IndexView(MongonautViewMixin, ListView):
# class DocumentListView(MongonautViewMixin, FormView):
# class DocumentDetailView(MongonautViewMixin, TemplateView):
# class DocumentEditFormView(MongonautViewMixin, FormView, MongonautFormViewMixin):
# class DocumentAddFormView(MongonautViewMixin, FormView, MongonautFormViewMixin):
# class DocumentDeleteView(DeletionMixin, MongonautViewMixin, TemplateView):
#     def get_queryset(self):
#     def get_qset(self, queryset, q):
#     def get_queryset(self):
#     def get_initial(self):
#     def get_context_data(self, **kwargs):
#     def post(self, request, *args, **kwargs):
#     def get_context_data(self, **kwargs):
#     def get_success_url(self):
#     def get_context_data(self, **kwargs):
#     def get_form(self): #get_form(self, Form) leads to "get_form() missing 1 required positional argument: 'Form'" error."
#     def get_success_url(self):
#     def get_context_data(self, **kwargs):
#     def get_form(self):
#     def get_success_url(self):
#     def get_object(self):


# Path: mongonaut/urls.py
from django.conf.urls import url
from mongonaut import views


urlpatterns = [
    url(
        regex=r'^$',
        view=views.IndexView.as_view(),
        name="index"
    ),
    url(
        regex=r'^(?P<app_label>[_\-\w\.]+)/(?P<document_name>[_\-\w\.]+)/$',
        view=views.DocumentListView.as_view(),
        name="document_list"
    ),
    url(
        regex=r'^(?P<app_label>[_\-\w\.]+)/(?P<document_name>[_\-\w\.]+)/add/$',
        view=views.DocumentAddFormView.as_view(),
        name="document_detail_add_form"
    ),
    url(
        regex=r'^(?P<app_label>[_\-\w\.]+)/(?P<document_name>[_\-\w\.]+)/(?P<id>[\w]+)/$',

        view=views.DocumentDetailView.as_view(),
        name="document_detail"
    ),
    url(
        regex=r'^(?P<app_label>[_\-\w\.]+)/(?P<document_name>[_\-\w\.]+)/(?P<id>[\w]+)/edit/$',
        view=views.DocumentEditFormView.as_view(),
        name="document_detail_edit_form"
    ),
    url(
        regex=r'^(?P<app_label>[_\-\w\.]+)/(?P<document_name>[_\-\w\.]+)/(?P<id>[\w]+)/delete/$',

        view=views.DocumentDeleteView.as_view(),