Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从非pk字段访问数据的tastypie_Python_Django_Web Services_Resources_Tastypie - Fatal编程技术网

Python 从非pk字段访问数据的tastypie

Python 从非pk字段访问数据的tastypie,python,django,web-services,resources,tastypie,Python,Django,Web Services,Resources,Tastypie,我试过这个例子 通过添加此代码,可以从用户名而不是id访问用户资源 #myapp/api/resources.py class UserResource(ModelResource): class Meta: queryset = User.objects.all() def prepend_urls(self): return [ url(r"^(?P<resource_name>%s)/(?P<us

我试过这个例子

通过添加此代码,可以从用户名而不是id访问用户资源

 #myapp/api/resources.py
class UserResource(ModelResource):
    class Meta:
        queryset = User.objects.all()

    def prepend_urls(self):
        return [
            url(r"^(?P<resource_name>%s)/(?P<username>[\w\d_.-]+)/$" % self._meta.resource_name, self.wrap_view('dispatch_detail'), name="api_dispatch_detail"),
        ]
这是所有可用的URL

^api/ ^(?P<api_name>v1)/ ^(?P<resource_name>users)/$ [name='api_dispatch_list']
^api/ ^(?P<api_name>v1)/ ^(?P<resource_name>users)/schema/$ [name='api_get_schema']
^api/ ^(?P<api_name>v1)/ ^(?P<resource_name>users)/set/(?P<pk_list>\w[\w/;-]*)/$ [name='api_get_multiple']
^api/ ^(?P<api_name>v1)/ ^(?P<resource_name>users)/(?P<pk>\w[\w/-]*)/$ [name='api_dispatch_detail'] 
^api/^(?P

我想根据用户名打电话


您使用的是哪个版本的tastypie?0.9.11使用
覆盖URL
,而0.9.12(beta版)引入了
prepend\u URL
,两个版本的食谱不同。很可能您仍在使用0.9.11

见:

问题是,我的代码中使用用户名而不是pip工具中提到的idi Think最新版本0.9.11访问我的资源有什么不对,谢谢你,伙计
^api/ ^(?P<api_name>v1)/ ^(?P<resource_name>users)/$ [name='api_dispatch_list']
^api/ ^(?P<api_name>v1)/ ^(?P<resource_name>users)/schema/$ [name='api_get_schema']
^api/ ^(?P<api_name>v1)/ ^(?P<resource_name>users)/set/(?P<pk_list>\w[\w/;-]*)/$ [name='api_get_multiple']
^api/ ^(?P<api_name>v1)/ ^(?P<resource_name>users)/(?P<pk>\w[\w/-]*)/$ [name='api_dispatch_detail']