当前位置: 首页>>代码示例>>Python>>正文


Python routers.DefaultRouter类代码示例

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


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

示例1: test_flatten_url_tree_url_import_with_routers

    def test_flatten_url_tree_url_import_with_routers(self):

        class MockApiViewSet(ModelViewSet):
            serializer_class = CommentSerializer
            model = User

        class AnotherMockApiViewSet(ModelViewSet):
            serializer_class = CommentSerializer
            model = User

        router = DefaultRouter()
        router.register(r'other_views', MockApiViewSet)
        router.register(r'more_views', MockApiViewSet)

        urls_app = patterns('', url(r'^', include(router.urls)))
        urls = patterns(
            '',
            url(r'api/', include(urls_app)),
            url(r'test/', include(urls_app))
        )
        urlparser = UrlParser()
        apis = urlparser.get_apis(urls)

        self.assertEqual(sum(api['path'].find('api') != -1 for api in apis), 4)
        self.assertEqual(sum(api['path'].find('test') != -1 for api in apis), 4)
开发者ID:pcasciano,项目名称:django-rest-swagger,代码行数:25,代码来源:tests.py

示例2: Restify

class Restify(object):

    def __init__(self):
        # get restify specific settings
        self.settings = getattr(settings, 'RESTIFY', {})

        self.IGNORE_LIST = ['^django*', '^api$', '^rest_framework*',
                            '^auth*'] + self.settings.get('IGNORE_LIST', [])
        self.router = None
        self.viewsets = {}   # viewsets
        self.apps()

    def slugify(self, value):
        try:
            value = unicodedata.normalize('NFKD', value).encode(
                'ascii', 'ignore').decode('ascii')
        except:
            pass
        value = re.sub('[^\w\s-]', '', value).strip().lower()

        return re.sub('[-\s]+', '-', value)

    def get_apps(self):
        return apps.app_configs

    def apps(self):
        all_apps = self.get_apps()
        MODELS = self.settings.get('MODELS', None)

        for app, app_config in all_apps.items():
            # Check if user is in ignored list
            found = [ignore_pattern for ignore_pattern in self.IGNORE_LIST
                     if re.findall(ignore_pattern, app_config.name)]
            if found:
                continue

            for model in app_config.get_models():
                if MODELS and model._meta.model_name not in MODELS:
                    continue

                url = self.slugify(model._meta.verbose_name_plural.title())
                view = Views()
                viewset = view.get_viewsets(model)

                self.viewsets[url] = viewset

    def register(self):
        self.router = DefaultRouter()
        for url, viewset in self.viewsets.items():
            self.router.register(url, viewset)

        # special case fo User model
        user_viewset = get_user_viewset()
        self.router.register('users', user_viewset)

        return self.router

    def router(self):
        return self.router
开发者ID:DDecoene,项目名称:django-restify,代码行数:59,代码来源:restify.py

示例3: setUp

 def setUp(self):
     router = DefaultRouter()
     router.register('example1', Http404ExampleViewSet, base_name='example1')
     router.register('example2', PermissionDeniedExampleViewSet, base_name='example2')
     self.patterns = [
         url('^example/?$', ExampleListView.as_view()),
         url(r'^', include(router.urls))
     ]
开发者ID:ArtikUA,项目名称:django-rest-framework,代码行数:8,代码来源:test_schemas.py

示例4: TestNameableRoot

class TestNameableRoot(TestCase):
    def setUp(self):
        class NoteViewSet(viewsets.ModelViewSet):
            model = RouterTestModel
        self.router = DefaultRouter()
        self.router.root_view_name = 'nameable-root'
        self.router.register(r'notes', NoteViewSet)
        self.urls = self.router.urls

    def test_router_has_custom_name(self):
        expected = 'nameable-root'
        self.assertEqual(expected, self.urls[0].name)
开发者ID:awarnys,项目名称:django-rest-framework,代码行数:12,代码来源:test_routers.py

示例5: TestRootWithAListlessViewset

class TestRootWithAListlessViewset(TestCase):
    def setUp(self):
        class NoteViewSet(mixins.RetrieveModelMixin, viewsets.GenericViewSet):
            model = RouterTestModel

        self.router = DefaultRouter()
        self.router.register(r"notes", NoteViewSet)
        self.view = self.router.urls[0].callback

    def test_api_root(self):
        request = factory.get("/")
        response = self.view(request)
        self.assertEqual(response.data, {})
开发者ID:mhsparks,项目名称:django-rest-framework,代码行数:13,代码来源:test_routers.py

示例6: TestNameableRoot

class TestNameableRoot(TestCase):
    def setUp(self):
        class NoteViewSet(viewsets.ModelViewSet):
            queryset = RouterTestModel.objects.all()

        self.router = DefaultRouter()
        self.router.root_view_name = 'nameable-root'
        self.router.register(r'notes', NoteViewSet)
        self.urls = self.router.urls

    def test_router_has_custom_name(self):
        expected = 'nameable-root'
        assert expected == self.urls[-1].name
开发者ID:seawolf42,项目名称:django-rest-framework,代码行数:13,代码来源:test_routers.py

示例7: GeoModelViewSetTestCase

class GeoModelViewSetTestCase(SimpleQueryTestCase):
    def setUp(self):
        self.router = DefaultRouter()
        self.router.register(r'locations', LocationViewSet)
        self.view = LocationViewSet.as_view({'get': 'list'})

    def test_renderer(self):
        request = factory.get('/locations/',
                              HTTP_ACCEPT=GeoJSONRenderer.media_type)
        response = self.view(request)
        self.assertIsInstance(response.accepted_renderer, GeoJSONRenderer)

    def test_register(self):
        self.assertGreater(len(self.router.urls), 0)
开发者ID:bkg,项目名称:django-spillway,代码行数:14,代码来源:test_viewsets.py

示例8: test_exclude_router_api_root

    def test_exclude_router_api_root(self):
        class MyViewSet(ModelViewSet):
            serializer_class = CommentSerializer
            model = User

        router = DefaultRouter()
        router.register('test', MyViewSet)

        urls_created = len(router.urls)

        parser = UrlParser()
        apis = parser.get_apis(router.urls)

        self.assertEqual(4, urls_created - len(apis))
开发者ID:pcasciano,项目名称:django-rest-swagger,代码行数:14,代码来源:tests.py

示例9: RasterViewSetTestCase

class RasterViewSetTestCase(SimpleTestCase):
    def setUp(self):
        self.router = DefaultRouter()
        self.router.register(r'rasters', RasterViewSet)
        self.view = RasterViewSet.as_view({'get': 'list'})

    def test_renderer(self):
        request = factory.get('/rasters/',
                              HTTP_ACCEPT=GeoTIFFZipRenderer.media_type)
        response = self.view(request)
        self.assertEqual(response['Content-Type'],
                         GeoTIFFZipRenderer.media_type)

    def test_register(self):
        self.assertGreater(len(self.router.urls), 0)
开发者ID:kuzmich,项目名称:django-spillway,代码行数:15,代码来源:test_viewsets.py

示例10: setUp

    def setUp(self):
        class NoteViewSet(mixins.RetrieveModelMixin, viewsets.GenericViewSet):
            model = RouterTestModel

        self.router = DefaultRouter()
        self.router.register(r"notes", NoteViewSet)
        self.view = self.router.urls[0].callback
开发者ID:mhsparks,项目名称:django-rest-framework,代码行数:7,代码来源:test_routers.py

示例11: setUp

 def setUp(self):
     class NoteViewSet(viewsets.ModelViewSet):
         model = RouterTestModel
     self.router = DefaultRouter()
     self.router.root_view_name = 'nameable-root'
     self.router.register(r'notes', NoteViewSet)
     self.urls = self.router.urls
开发者ID:awarnys,项目名称:django-rest-framework,代码行数:7,代码来源:test_routers.py

示例12: register

    def register(self):
        self.router = DefaultRouter()
        for url, viewset in self.viewsets.items():
            self.router.register(url, viewset)

        # special case fo User model
        user_viewset = get_user_viewset()
        self.router.register('users', user_viewset)

        return self.router
开发者ID:DDecoene,项目名称:django-restify,代码行数:10,代码来源:restify.py

示例13: test_flatten_url_tree_url_import_with_routers

    def test_flatten_url_tree_url_import_with_routers(self):
        class MockApiViewSet(ModelViewSet):
            serializer_class = CommentSerializer
            model = User

        class AnotherMockApiViewSet(ModelViewSet):
            serializer_class = CommentSerializer
            model = User

        router = DefaultRouter()
        router.register(r"other_views", MockApiViewSet)
        router.register(r"more_views", MockApiViewSet)

        urls_app = patterns("", url(r"^", include(router.urls)))
        urls = patterns("", url(r"api/", include(urls_app)), url(r"test/", include(urls_app)))
        urlparser = UrlParser()
        apis = urlparser.get_apis(urls)

        self.assertEqual(sum(api["path"].find("api") != -1 for api in apis), 4)
        self.assertEqual(sum(api["path"].find("test") != -1 for api in apis), 4)
开发者ID:B-Rich,项目名称:django-rest-swagger,代码行数:20,代码来源:tests.py

示例14: get_router

def get_router():
    """
    Get a Django REST Framework router instance with all viewsets.

    :rtype: rest_framework.routers.DefaultRouter
    """
    router = DefaultRouter()
    router.register(r'projects', ProjectViewSet)
    router.register(r'issues', IssueViewSet)
    router.register(r'comments', CommentViewSet)
    return router
开发者ID:japsu,项目名称:wurst,代码行数:11,代码来源:router.py

示例15: DefaultRouter

from django.conf import settings
from django.conf.urls import include, url

from rest_framework.routers import DefaultRouter

from .views import DiscretizedDataPointViewSet


router = DefaultRouter()
router.register(r'discretized_data_points', DiscretizedDataPointViewSet)

urlpatterns = [
    url(r'^api/' + settings.API_VERSION + '/', include(router.urls)),  # TODO makes sense to have a settings.API_BASE_URL rather than a settings.API_VERSION?
]
开发者ID:scintilla-aircheck,项目名称:aircheck_com,代码行数:14,代码来源:urls.py


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