У меня есть модель с именем Artist, и я хочу разоблачить эту модель с помощью Django Rest Framework для создания API, и эти данные могут быть использованы.Сериализация с каркасом отдыха django
Я создал на основе представление класса в художниках/views.py имени ArtistViewSet
#CBV for rest frameworks
from rest_framework import viewsets
class ArtistViewSet(viewsets.ModelViewSet):
model = Artist
У меня также есть URL с именем апи/в файле urls.py (просмотреть третий URL по имени API /), который пользователь мог получить доступ к вышеуказанному виду.
# coding=utf-8
from django.conf.urls import patterns, include, url
from django.conf import settings
from django.contrib import admin
admin.autodiscover()
from rest_framework import routers
from artists.views import ArtistViewSet
#I create a router by default
router = routers.DefaultRouter()
#Register the model 'artists' in ArtistViewSet
router.register(r'artists', ArtistViewSet)
urlpatterns = patterns('',
(r'^grappelli/', include('grappelli.urls')), # grappelli URLS
url(r'^admin/', include(admin.site.urls)),
#Include url api/ with all urls of router
url(r'^api/', include(routers.urls)),
)
Когда я иду в браузер и тип http://localhost:8000/api/ я получаю эту ошибку сообщение:
Что может быть случилось со мной?
Необходимо указать 'base_name'. Прочтите [Маршрутизаторы] (http://www.django-rest-framework.org/api-guide/routers/). В нем конкретно упоминается ошибка, которую вы получили. – norbertpy
@norbertpy спасибо. Я не могу понять rol base_name. Я имею в виду, это базовое имя - это URL, который я создал? Мой viewet ArtistViewSet не имеет атрибута queryset, из-за этого, согласно документации, необходимо поместить аргумент base_name, но я не знаю, как это сделать. Извините меня за вопрос новичков. – bgarcial