• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python routers.ExtendedSimpleRouter类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中rest_framework_extensions.routers.ExtendedSimpleRouter的典型用法代码示例。如果您正苦于以下问题:Python ExtendedSimpleRouter类的具体用法?Python ExtendedSimpleRouter怎么用?Python ExtendedSimpleRouter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



在下文中一共展示了ExtendedSimpleRouter类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: test_nested_route

    def test_nested_route(self):
        router = ExtendedSimpleRouter()
        (
            router.register(r'users', UserViewSet, 'user')
                  .register(r'groups', GroupViewSet, 'users-group', parents_query_lookups=['user'])
        )

        # test user list
        self.assertEqual(router.urls[0].name, 'user-list')
        self.assertEqual(router.urls[0]._regex, r'^users/$')

        # test user detail
        self.assertEqual(router.urls[1].name, 'user-detail')
        self.assertEqual(router.urls[1]._regex, r'^users/{0}/$'.format(self.get_lookup_regex('pk')))

        # test users group list
        self.assertEqual(router.urls[2].name, 'users-group-list')
        self.assertEqual(router.urls[2]._regex, r'^users/{0}/groups/$'.format(
                self.get_parent_lookup_regex('user')
            )
        )

        # test users group detail
        self.assertEqual(router.urls[3].name, 'users-group-detail')
        self.assertEqual(router.urls[3]._regex, r'^users/{0}/groups/{1}/$'.format(
                self.get_parent_lookup_regex('user'),
                self.get_lookup_regex('pk')
            ),
        )
开发者ID:AdrianRibao,项目名称:drf-extensions,代码行数:29,代码来源:tests.py


示例2: test_urls_have_trailing_slash_by_default

    def test_urls_have_trailing_slash_by_default(self):
        router = ExtendedSimpleRouter()
        router.register(r'router-viewset', RouterViewSet)
        urls = router.urls

        for exp in ['^router-viewset/$',
                    '^router-viewset/(?P<pk>[^/.]+)/$',
                    '^router-viewset/list_controller/$',
                    '^router-viewset/(?P<pk>[^/.]+)/detail_controller/$']:
            msg = 'Should find url pattern with regexp %s' % exp
            self.assertIsNotNone(get_url_pattern_by_regex_pattern(urls, exp), msg=msg)
开发者ID:chibisov,项目名称:drf-extensions,代码行数:11,代码来源:tests.py


示例3: test_one_route

    def test_one_route(self):
        router = ExtendedSimpleRouter()
        router.register(r'users', UserViewSet, 'user')

        # test user list
        self.assertEqual(router.urls[0].name, 'user-list')
        self.assertEqual(router.urls[0]._regex, r'^users/$')

        # test user detail
        self.assertEqual(router.urls[1].name, 'user-detail')
        self.assertEqual(router.urls[1]._regex, r'^users/{0}/$'.format(self.get_lookup_regex('pk')))
开发者ID:AdrianRibao,项目名称:drf-extensions,代码行数:11,代码来源:tests.py


示例4: test_urls_have_trailing_slash_by_default

    def test_urls_have_trailing_slash_by_default(self):
        router = ExtendedSimpleRouter()
        router.register(r'router-viewset', RouterViewSet)
        urls = router.urls

        lookup_allowed_symbols = get_lookup_allowed_symbols()

        for exp in ['^router-viewset/$',
                    '^router-viewset/{0}/$'.format(lookup_allowed_symbols),
                    '^router-viewset/list_controller/$',
                    '^router-viewset/{0}/detail_controller/$'.format(lookup_allowed_symbols)]:
            msg = 'Should find url pattern with regexp %s' % exp
            self.assertIsNotNone(get_url_pattern_by_regex_pattern(urls, exp), msg=msg)
开发者ID:Tim-Erwin,项目名称:drf-extensions,代码行数:13,代码来源:tests.py


示例5: test_nested_route_depth_3

    def test_nested_route_depth_3(self):
        router = ExtendedSimpleRouter()
        (
            router.register(r'users', UserViewSet, 'user')
                  .register(r'groups', GroupViewSet, 'users-group', parents_query_lookups=['user'])
                  .register(r'permissions', PermissionViewSet, 'users-groups-permission', parents_query_lookups=[
                               'group__user',
                               'group',
                            ]
                  )
        )

        # test user list
        self.assertEqual(router.urls[0].name, 'user-list')
        self.assertEqual(router.urls[0]._regex, r'^users/$')

        # test user detail
        self.assertEqual(router.urls[1].name, 'user-detail')
        self.assertEqual(router.urls[1]._regex, r'^users/{0}/$'.format(self.get_lookup_regex('pk')))

        # test users group list
        self.assertEqual(router.urls[2].name, 'users-group-list')
        self.assertEqual(router.urls[2]._regex, r'^users/{0}/groups/$'.format(
                self.get_parent_lookup_regex('user')
            )
        )

        # test users group detail
        self.assertEqual(router.urls[3].name, 'users-group-detail')
        self.assertEqual(router.urls[3]._regex, r'^users/{0}/groups/{1}/$'.format(
                self.get_parent_lookup_regex('user'),
                self.get_lookup_regex('pk')
            ),
        )

        # test users groups permission list
        self.assertEqual(router.urls[4].name, 'users-groups-permission-list')
        self.assertEqual(router.urls[4]._regex, r'^users/{0}/groups/{1}/permissions/$'.format(
                self.get_parent_lookup_regex('group__user'),
                self.get_parent_lookup_regex('group'),
            )
        )

        # test users groups permission detail
        self.assertEqual(router.urls[5].name, 'users-groups-permission-detail')
        self.assertEqual(router.urls[5]._regex, r'^users/{0}/groups/{1}/permissions/{2}/$'.format(
                self.get_parent_lookup_regex('group__user'),
                self.get_parent_lookup_regex('group'),
                self.get_lookup_regex('pk')
            ),
        )
开发者ID:AdrianRibao,项目名称:drf-extensions,代码行数:51,代码来源:tests.py


示例6: test_urls_can_have_trailing_slash_removed

    def test_urls_can_have_trailing_slash_removed(self):
        router = ExtendedSimpleRouter(trailing_slash=False)
        router.register(r'router-viewset', RouterViewSet)
        urls = router.urls

        lookup_allowed_symbols = get_lookup_allowed_symbols(
            force_dot=get_rest_framework_features()['allow_dot_in_lookup_regex_without_trailing_slash']
        )

        for exp in ['^router-viewset$',
                    '^router-viewset/{0}$'.format(lookup_allowed_symbols),
                    '^router-viewset/list_controller$',
                    '^router-viewset/{0}/detail_controller$'.format(lookup_allowed_symbols)]:
            msg = 'Should find url pattern with regexp %s' % exp
            self.assertIsNotNone(get_url_pattern_by_regex_pattern(urls, exp), msg=msg)
开发者ID:Tim-Erwin,项目名称:drf-extensions,代码行数:15,代码来源:tests.py


示例7: test_urls_can_have_trailing_slash_removed

    def test_urls_can_have_trailing_slash_removed(self):
        router = ExtendedSimpleRouter(trailing_slash=False)
        router.register(r'router-viewset', RouterViewSet)
        urls = router.urls

        if get_rest_framework_features()['allow_dot_in_lookup_regex_without_trailing_slash']:
            lookup_allowed_symbols = '(?P<pk>[^/.]+)'
        else:
            lookup_allowed_symbols = '(?P<pk>[^/]+)'

        for exp in ['^router-viewset$',
                    '^router-viewset/' + lookup_allowed_symbols + r'$',
                    '^router-viewset/list_controller$',
                    '^router-viewset/' + lookup_allowed_symbols + '/detail_controller$']:
            msg = 'Should find url pattern with regexp %s' % exp
            self.assertIsNotNone(get_url_pattern_by_regex_pattern(urls, exp), msg=msg)
开发者ID:Bazzinga,项目名称:drf-extensions,代码行数:16,代码来源:tests.py


示例8: import

# -*- coding: utf-8 -*-
from rest_framework_extensions.routers import ExtendedSimpleRouter

from .views import (
    UserViewSet,
    GroupViewSet,
    PermissionViewSet,
)


router = ExtendedSimpleRouter()
# main routes
(
    router.register(r'users', UserViewSet)
          .register(r'groups', GroupViewSet, 'users-group', parents_query_lookups=['user_groups'])
          .register(r'permissions', PermissionViewSet, 'users-groups-permission', parents_query_lookups=['group__user', 'group'])
)

# register on one depth
permissions_routes = router.register(r'permissions', PermissionViewSet)
permissions_routes.register(r'groups', GroupViewSet, 'permissions-group', parents_query_lookups=['permissions'])
permissions_routes.register(r'users', UserViewSet, 'permissions-user', parents_query_lookups=['groups__permissions'])

# simple routes
router.register(r'groups', GroupViewSet, 'group')
router.register(r'permissions', PermissionViewSet, 'permission')

urlpatterns = router.urls
开发者ID:raphendyr,项目名称:drf-extensions,代码行数:28,代码来源:urls.py


示例9: url

        r'^{course_id}$'.format(course_id=COURSE_ID_PATTERN),
        publication_views.AtomicPublicationView.as_view(),
        name='update'
    ),
]

urlpatterns = [
    url(r'^baskets/', include(BASKET_URLS, namespace='baskets')),
    url(r'^checkout/$', include(CHECKOUT_URLS, namespace='checkout')),
    url(r'^coupons/', include(COUPON_URLS, namespace='coupons')),
    url(r'^payment/', include(PAYMENT_URLS, namespace='payment')),
    url(r'^refunds/', include(REFUND_URLS, namespace='refunds')),
    url(r'^publication/', include(ATOMIC_PUBLICATION_URLS, namespace='publication')),
]

router = ExtendedSimpleRouter()
router.register(r'courses', course_views.CourseViewSet) \
    .register(r'products', product_views.ProductViewSet,
              base_name='course-product', parents_query_lookups=['course_id'])
router.register(r'partners', partner_views.PartnerViewSet) \
    .register(r'products', product_views.ProductViewSet,
              base_name='partner-product', parents_query_lookups=['stockrecords__partner_id'])
router.register(r'partners', partner_views.PartnerViewSet) \
    .register(r'catalogs', catalog_views.CatalogViewSet,
              base_name='partner-catalogs', parents_query_lookups=['partner_id'])
router.register(r'products', product_views.ProductViewSet)
router.register(r'stockrecords', stockrecords_views.StockRecordViewSet, base_name='stockrecords')

router.register(r'catalogs', catalog_views.CatalogViewSet) \
    .register(r'products', product_views.ProductViewSet, base_name='catalog-product',
              parents_query_lookups=['stockrecords__catalogs'])
开发者ID:BehavioralInsightsTeam,项目名称:ecommerce,代码行数:31,代码来源:urls.py


示例10: import

from rest_framework_extensions.routers import ExtendedSimpleRouter

from .views import (
    TaskViewSet,
    TaskCommentViewSet,
    BookViewSet,
    BookCommentViewSet
)


router = ExtendedSimpleRouter()
# tasks route
(
    router.register(r'tasks', TaskViewSet)
          .register(r'comments', TaskCommentViewSet, 'tasks-comment', parents_query_lookups=['object_id'])
)
# books route
(
    router.register(r'books', BookViewSet)
          .register(r'comments', BookCommentViewSet, 'books-comment', parents_query_lookups=['object_id'])
)

urlpatterns = router.urls
开发者ID:chibisov,项目名称:drf-extensions,代码行数:23,代码来源:urls_generic_relations.py


示例11: url

    url(
        r"^{course_id}$".format(course_id=COURSE_ID_PATTERN),
        publication_views.AtomicPublicationView.as_view(),
        name="update",
    ),
]

urlpatterns = [
    url(r"^baskets/", include(BASKET_URLS, namespace="baskets")),
    url(r"^coupons/", include(COUPON_URLS, namespace="coupons")),
    url(r"^payment/", include(PAYMENT_URLS, namespace="payment")),
    url(r"^refunds/", include(REFUND_URLS, namespace="refunds")),
    url(r"^publication/", include(ATOMIC_PUBLICATION_URLS, namespace="publication")),
]

router = ExtendedSimpleRouter()
router.register(r"courses", course_views.CourseViewSet).register(
    r"products", product_views.ProductViewSet, base_name="course-product", parents_query_lookups=["course_id"]
)
router.register(r"partners", partner_views.PartnerViewSet).register(
    r"products",
    product_views.ProductViewSet,
    base_name="partner-product",
    parents_query_lookups=["stockrecords__partner_id"],
)
router.register(r"partners", partner_views.PartnerViewSet).register(
    r"catalogs", catalog_views.CatalogViewSet, base_name="partner-catalogs", parents_query_lookups=["partner_id"]
)
router.register(r"products", product_views.ProductViewSet)
router.register(r"stockrecords", stockrecords_views.StockRecordViewSet, base_name="stockrecords")
开发者ID:fghaas,项目名称:edx-ecommerce,代码行数:30,代码来源:urls.py


示例12: import

#!/usr/bin/env python
# -*- coding: utf-8 -*-
from django.conf.urls import include
from django.conf.urls import url
from django.contrib import admin

from rest_framework_extensions.routers import (
    ExtendedSimpleRouter as SimpleRouter
)

from project.applications.users.views import UserViewSet
from project.applications.authentication.views import AuthenticationViewSet
from project.applications.questions.views import QuestionViewSet, AnswerViewSet

api_router = SimpleRouter()
api_router.register(r'users', UserViewSet)
api_router.register(r'auth', AuthenticationViewSet)

qa_router = api_router.register(r'questions', QuestionViewSet)
qa_router.register(r'answers',
                   AnswerViewSet,
                   'question-answers',
                   parents_query_lookups=['id'])

urlpatterns = [
    url(r'^api/', include(api_router.urls)),
    url(r'^admin/', admin.site.urls),
]
开发者ID:davidvuong,项目名称:healthshare-qa,代码行数:28,代码来源:urls.py


示例13: url

PAYMENT_URLS = [
    url(r"^processors/$", cache_page(60 * 30)(views.PaymentProcessorListView.as_view()), name="list_processors")
]

REFUND_URLS = [
    url(r"^$", views.RefundCreateView.as_view(), name="create"),
    url(r"^(?P<pk>[\d]+)/process/$", views.RefundProcessView.as_view(), name="process"),
]

ATOMIC_PUBLICATION_URLS = [
    url(r"^$", views.AtomicPublicationView.as_view(), name="create"),
    url(r"^{course_id}$".format(course_id=COURSE_ID_PATTERN), views.AtomicPublicationView.as_view(), name="update"),
]

urlpatterns = [
    url(r"^baskets/", include(BASKET_URLS, namespace="baskets")),
    url(r"^orders/", include(ORDER_URLS, namespace="orders")),
    url(r"^payment/", include(PAYMENT_URLS, namespace="payment")),
    url(r"^refunds/", include(REFUND_URLS, namespace="refunds")),
    url(r"^publication/", include(ATOMIC_PUBLICATION_URLS, namespace="publication")),
]

router = ExtendedSimpleRouter()
router.register(r"courses", views.CourseViewSet).register(
    r"products", views.ProductViewSet, base_name="course-product", parents_query_lookups=["course_id"]
)
router.register(r"products", views.ProductViewSet)

urlpatterns += router.urls
开发者ID:nikolicnikola,项目名称:ecommerce,代码行数:29,代码来源:urls.py


示例14: PostListSerializer

        page = self.paginate_queryset(queryset)
        if page is not None:
            serializer = PostListSerializer(page, many=True)
            return self.get_paginated_response(serializer.data)

        serializer = NewsListSerializer(queryset, many=True)
        return Response(serializer.data)

    def retrieve(self, request, *args, **kwargs):
        instance = self.get_object()
        instance.add_view()
        serializer = self.get_serializer(instance)
        return Response(serializer.data)


router = ExtendedSimpleRouter()
router.register(r'^news', NewsViewset, 'news')
router.register(r'^stats', PostViewset, 'posts')


def news_list(request):
    news = News.objects.all()[:10]
    return render_to_response('ajax_templates/blog/news_list.html', {'news': news},
                              context_instance=RequestContext(request))


def news_retrieve(request, slug):
    news = get_object_or_404(News, slug=slug)
    return render_to_response('ajax_templates/blog/news_retrieve.html', {'data': news},
                              context_instance=RequestContext(request))
开发者ID:Shaper2111,项目名称:maes,代码行数:30,代码来源:views.py


示例15: ExtendedSimpleRouter

from django.conf.urls import url, include
from django.contrib import admin
from django.contrib.auth.models import User
from rest_framework import routers, serializers, viewsets, permissions
from rest_framework_extensions.routers import ExtendedSimpleRouter
from app.views import *
from app import models

router = ExtendedSimpleRouter()
(
    router.register(r'events', EventViewSet, base_name='events')
          .register(r'attractions',
                    AttractionViewSet,
                    base_name='events-attractions',
                    parents_query_lookups=['event_id'])
)

router.register(r'categories', create_model_view_set(Category), base_name='categories')

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')),
    url(r'^reactions/', ReactionView.as_view()),
    url(r'^', include(router.urls)),
]
开发者ID:marconvcm,项目名称:eventbox,代码行数:25,代码来源:urls.py


示例16: import

#from rest_framework_extensions.routers import DefaultRouter
from rest_framework_extensions.routers import (
    ExtendedSimpleRouter as SimpleRouter
)

from srv.applications.users.views import UserViewSet
from srv.applications.authentication.views import AuthenticationViewSet
from srv.applications.game.views import *
from srv.applications.game import urls as gameurls
from srv.applications.profiles import urls as profileurls

#import  srv.applications.symbolic_math

#from .settings import MEDIA_ROOT

api_router = SimpleRouter()
api_router.register(r'users',                UserViewSet)
api_router.register(r'auth',                 AuthenticationViewSet)
api_router.register(r'categories',           CategoryViewSet)
api_router.register(r'categories-with-apps', CategoryAppsViewSet)
api_router.register(r'apps',                 AppViewSet)
api_router.register(r'apps-minimal',         AppMinimalViewSet)
api_router.register(r'instances',            InstanceViewSet)
api_router.register(r'snapshots',            SnapshotViewSet)
api_router.register(r'code_modules',         CodeModuleViewSet)
api_router.register(r'instances-ordered',    OrderedInstancesViewSet)


urlpatterns = [
    url(r'^api/', include(api_router.urls)),
    url(r'^admin/', admin.site.urls),
开发者ID:nino-c,项目名称:codeswitcher3,代码行数:31,代码来源:urls.py


示例17: ExtendedSimpleRouter

from django.conf.urls import url, include
from django.contrib import admin
from rest_framework_extensions.routers import ExtendedSimpleRouter
from restapi import views

router = ExtendedSimpleRouter()
router.register(r'users', views.UserViewSet)

team_router = router.register(r'teams', views.TeamViewSet)
team_router.register(r'notes', views.NoteViewSet, base_name='team-notes', parents_query_lookups=['team_id'])


urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')),
    url(r'^o/', include('oauth2_provider.urls', namespace='oauth2_provider')),
    url(r'^', include(router.urls))
]
开发者ID:mattr555,项目名称:scouter,代码行数:18,代码来源:urls.py


示例18: ExtendedSimpleRouter

from django.conf.urls import include, url
from rest_framework_extensions.routers import ExtendedSimpleRouter
from .viewsets import BucketlistViewSet, UserViewSet, ItemViewSet
from api.views import api_root

router = ExtendedSimpleRouter()


(
    router.register(r'bucketlists', BucketlistViewSet)
          .register(r'items',
                    ItemViewSet,
                    base_name='bucketlist-items',
                    parents_query_lookups=['bucketlist']
                    )
)
router.register(r'users', UserViewSet)
router.register(r'items', ItemViewSet)

urlpatterns = [
    url(r'^$', api_root),
    url(r'^', include(router.urls)),
    url(r'^auth/', include('rest_framework.urls', namespace='rest_framework')),
    url(r'^docs/', include('rest_framework_swagger.urls')),
    url(r'^token-auth/', 'rest_framework_jwt.views.obtain_jwt_token'),
]
开发者ID:andela-egichuri,项目名称:checkpoint3,代码行数:26,代码来源:urls.py


示例19: url

    2. Add a URL to urlpatterns:  url(r'^blog/', include(blog_urls))
"""
from django.conf.urls import include, url
from django.contrib import admin
from rest_framework import routers
from portfolio import views
from rest_framework_extensions.routers import ExtendedSimpleRouter

#router = routers.DefaultRouter()
#router.register(r'users', views.UserViewSet)
#router.register(r'groups', views.GroupViewSet)
#router.register(r'portfolios', views.PortfolioViewSet)
#router.register(r'positions', views.PositionViewSet)
#router.register(r'transactions', views.TransactionViewSet)

router = ExtendedSimpleRouter()
(
    router.register(r'portfolios', views.PortfolioViewSet)
          .register(r'positions', views.PositionViewSet, base_name='positions-portfolios', parents_query_lookups=['portfolio_id'])
#.register(r'transactions', views.PositionViewSet, base_name='transactions-portfolios', parents_query_lookups=['portfolio_id'])
    
)
router2 = ExtendedSimpleRouter()
(
    router.register(r'portfolios', views.PortfolioViewSet)
       #   .register(r'positions', views.PositionViewSet, base_name='positions-portfolios', parents_query_lookups=['portfolio_id'])
          .register(r'transactions', views.TransactionViewSet, base_name='transactions-portfolios', parents_query_lookups=['portfolio_id'])
    
)
#router.register(r'users', views.UserViewSet)
#router.register(r'groups', views.GroupViewSet)
开发者ID:boriswexler,项目名称:code-challenge,代码行数:31,代码来源:urls.py


示例20: ExtendedSimpleRouter

# -*- coding: utf-8 -*-


from django.conf.urls import url
from rest_framework_extensions.routers import ExtendedSimpleRouter

from . import views

router = ExtendedSimpleRouter()
(
    router.register(r'processos', views.ProcessoViewSet, base_name='processo')
        .register(
            r'eventos', views.EventoViewSet, base_name='processos-evento',
            parents_query_lookups=['processo']),
)
urlpatterns = router.urls

urlpatterns += [
    url(r'^processos/(?P<parent_lookup_processo>[^/.]+)/partes/$', views.ParteListAPIView.as_view(), name='processos-partes-list')
]
开发者ID:tiagoamx,项目名称:procapi,代码行数:20,代码来源:urls.py



注:本文中的rest_framework_extensions.routers.ExtendedSimpleRouter类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python utils.jwt_decode_handler函数代码示例发布时间:2022-05-26
下一篇:
Python views.get_view_description函数代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap