Quantcast
Channel: Active questions tagged python - Stack Overflow
Viewing all articles
Browse latest Browse all 14301

Django - How to serialize (and later iterate through) list of dictionaries?

$
0
0

I am having hard time with serializing data from API since this is the first time that I am doing this. I would like to ask you for your help.

From API i receive dictionary with some keys. Value for key "Search" is list of dictionaries that I would like to print in a for loop in my template later. But I failed.

Here are my results that I managed to put together from few hours of googling and browsing through stack overflow.

Here is my views.py:

def results(request):    title = request.POST.get("Title")    api_key = "111111"    url = f"http://www.omdbapi.com/?s={title}&type=movie&apikey={api_key}"    response = requests.get(url)    serializer = SearchListSerializer(data=response.json()["Search"], many=True)    if serializer.is_valid():        serializer.save()        movies = serializer.objects.all()    else:        print(serializer.errors)        print("Something went wrong.")    return render(request, 'movie_database/results.html', movies)

And here is my serializers.py:

class MovieSerializer(serializers.ModelSerializer):    class Meta:        model = Movie        fields = '__all__'class SearchSerializer(serializers.DictField):    Title = serializers.CharField(max_length=300)    Year = serializers.CharField(max_length=100)class SearchListSerializer(serializers.ListField):    child = SearchSerializer()

I currently receive error:

TypeError at /results/__init__() got an unexpected keyword argument 'data'

But I know that it is only a tip of the iceberg. And one of the problems.


Viewing all articles
Browse latest Browse all 14301

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>