简体   繁体   English

如何使用 django rest 框架创建 Django API?

[英]How to create a Django API using django rest framework which shows response from some external source?

i am in a situation where i need to create a django api which on call from frontend gives a response fetched internally from some other source but not from serializers and models .我处于需要创建一个django api的情况,它在从frontend调用时会给出从其他来源而不是从serializers器和models内部获取的响应。 Currently i am using django rest framework to create api like below目前我正在使用 django rest 框架来创建api如下所示

MODELS楷模

# Create your models here.
class submission(models.Model):
    # fixed fields to show on today panel/pending panel
    email_id = models.CharField(max_length=200, primary_key=True)
    email_sender = models.CharField(max_length=200, null=True, blank=True)


def __str__(self):
        return self.email_id

SERIALIZERS序列化器

class UserSerializer(serializers.ModelSerializer):
    class Meta:
        model = submission
        fields = ('__all__')

VIEWS意见

class SAMPLE(viewsets.ModelViewSet):
    queryset = submission.objects.all()
    serializer_class = UserSerializer

URLS网址

router = DefaultRouter()
# user table
router.register('user_table_all_data', SAMPLE, basename='user_table_all_data')

and it works as charm, but in order to work with django rest framework i always need to call like this 1. Create model or use existing model, 2. Create serializers,3. Create Views,4. Create URLs and it works as charm, but in order to work with django rest framework i always need to call like this 1. Create model or use existing model, 2. Create serializers,3. Create Views,4. Create URLs 2. Create serializers,3. Create Views,4. Create URLs 2. Create serializers,3. Create Views,4. Create URLs , 2. Create serializers,3. Create Views,4. Create URLs

But what if i dont want to use models say for example i want to show data from other source say which contains a sample json like below但是如果我不想使用models例如我想显示来自其他来源的数据说其中包含示例json如下所示

sampleData = {"Name":"RAJNISH","Age":32,"ADDRESS":"India"}

so if my API is say 'sample/someid (not pk)'所以如果我的API是说'sample/someid (not pk)'

returns response as返回响应为

{"Name":"RAJNISH","Age":32,"ADDRESS":"India"}

how can i do this in django rest framework?我怎么能在 django rest 框架中做到这一点?

Use Function based views instead of Class based views使用基于 Function 的视图而不是基于 Class 的视图

def sample(request):
    return Response(data={"Name":"RAJNISH","Age":32,"ADDRESS":"India"})

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何在Django Rest Framework中对外部API进行分页 - How to paginate external API in Django Rest Framework 如何使用Django Rest Framework创建登录API? - How do I create a login API using Django Rest Framework? Django Rest API 仅显示一些网址 - Django Rest API shows only some urls Django REST Framework - 来自外部供应商的 OAuth2 Consumer API - Django REST Framework - OAuth2 Consumer API from external provider 是否可以创建仅从外部数据库读取数据并提供REST API的Django应用程序? - Is it possible to create a Django app which only reads data from external database and provides REST API? 如何在django rest框架中返回自定义词典作为“create”方法的响应? - How to return custom dictionary as response for a “create” method in django rest framework? Django Rest框架:自定义API响应 - Django Rest framework: custom API response Django / Django REST框架-内部API显示通过过滤从外部API提取的结果 - Django/Django REST Framework - Internal API displaying results fetched from external API with filtering 为 Django REST 框架序列化程序使用外部输入 - Using external input for a Django rest framework serializer 我如何使用 url 使用 Generics API 在 django rest 框架中查看响应 - how i get image location with url using Generics API view in response in django rest framework
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM