How to iterate over Query List of django model The Next CEO of Stack OverflowHow do I check if a list is empty?How do you split a list into evenly sized chunks?How to make a flat list out of list of lists?How do I get the number of elements in a list in Python?How do I concatenate two lists in Python?How to clone or copy a list?How do I list all files of a directory?How to read a file line-by-line into a list?Iterating over dictionaries using 'for' loopsHow to iterate over rows in a DataFrame in Pandas?

I believe this to be a fraud - hired, then asked to cash check and send cash as Bitcoin

Would this house-rule that treats advantage as a +1 to the roll instead (and disadvantage as -1) and allows them to stack be balanced?

Running a General Election and the European Elections together

What happened in Rome, when the western empire "fell"?

Is a distribution that is normal, but highly skewed considered Gaussian?

The past simple of "gaslight" – "gaslighted" or "gaslit"?

How did people program for Consoles with multiple CPUs?

RigExpert AA-35 - Interpreting The Information

Do they change the text of the seder in Israel?

What was the first Unix version to run on a microcomputer?

WOW air has ceased operation, can I get my tickets refunded?

Is it convenient to ask the journal's editor for two additional days to complete a review?

How to avoid supervisors with prejudiced views?

Can Plant Growth be repeatedly cast on the same area to exponentially increase the yield of harvests there (more than twice)?

Can you be charged for obstruction for refusing to answer questions?

Why is the US ranked as #45 in Press Freedom ratings, despite its extremely permissive free speech laws?

Flying from Cape Town to England and return to another province

Why didn't Khan get resurrected in the Genesis Explosion?

Using Rolle's theorem to show an equation has only one real root

What did we know about the Kessel run before the prequels?

If Nick Fury and Coulson already knew about aliens (Kree and Skrull) why did they wait until Thor's appearance to start making weapons?

Won the lottery - how do I keep the money?

Would a grinding machine be a simple and workable propulsion system for an interplanetary spacecraft?

Proper way to express "He disappeared them"



How to iterate over Query List of django model



The Next CEO of Stack OverflowHow do I check if a list is empty?How do you split a list into evenly sized chunks?How to make a flat list out of list of lists?How do I get the number of elements in a list in Python?How do I concatenate two lists in Python?How to clone or copy a list?How do I list all files of a directory?How to read a file line-by-line into a list?Iterating over dictionaries using 'for' loopsHow to iterate over rows in a DataFrame in Pandas?










0















I am reading a json file from a website and if the record is not in my Customers queryset I want to create a new Customer for that record. What is happening is when I iterate over the queryset, Django is trying to create a new Customer even when it is already in the queryset.



Please see my code below:



from rest_framework import generics
from customer.models import Customers
from .serializers import CustomersSerializer
import json
import urllib.request

class CustomerAPIView(generics.ListAPIView):
j = urllib.request.urlopen("https://web.njit.edu/~jsd38/json/customer.json")
customer_data = json.load(j)
queryset1 = Customers.objects.values_list('CustomerId', flat=True)
for customer in customer_data:
if customer["@Id"] not in queryset1.iterator():
CustomerId = customer["@Id"]
Name = customer["Name"]
PhoneNumber = customer["PhoneNumber"]
EmailAddress = customer["EmailAddress"]
StreetLine = customer["Address"]["StreetLine1"]
City = customer["Address"]["City"]
StateCode = customer["Address"]["StateCode"]
PostalCode = customer["Address"]["PostalCode"]
cus = Customers()
cus.CustomerId = CustomerId
cus.Name = Name
cus.PhoneNumber = PhoneNumber
cus.EmailAddress = EmailAddress
cus.StreetLine = StreetLine
cus.City = City
cus.StateCode = StateCode
cus.PostalCode = PostalCode
cus.save()
queryset = Customers.objects.all()
serializer_class = CustomersSerializer









share|improve this question
























  • It should work, although you don't need .iterator() (if customer["@Id"] not in queryset1 would work also). There must be another reason why the json value is not in the values list: str versus int?

    – dirkgroten
    Mar 8 at 16:28











  • have you printed the queryset and the JSON data to see if it is really present? And are you sure that both have the same data type?

    – Ralf
    Mar 8 at 16:30















0















I am reading a json file from a website and if the record is not in my Customers queryset I want to create a new Customer for that record. What is happening is when I iterate over the queryset, Django is trying to create a new Customer even when it is already in the queryset.



Please see my code below:



from rest_framework import generics
from customer.models import Customers
from .serializers import CustomersSerializer
import json
import urllib.request

class CustomerAPIView(generics.ListAPIView):
j = urllib.request.urlopen("https://web.njit.edu/~jsd38/json/customer.json")
customer_data = json.load(j)
queryset1 = Customers.objects.values_list('CustomerId', flat=True)
for customer in customer_data:
if customer["@Id"] not in queryset1.iterator():
CustomerId = customer["@Id"]
Name = customer["Name"]
PhoneNumber = customer["PhoneNumber"]
EmailAddress = customer["EmailAddress"]
StreetLine = customer["Address"]["StreetLine1"]
City = customer["Address"]["City"]
StateCode = customer["Address"]["StateCode"]
PostalCode = customer["Address"]["PostalCode"]
cus = Customers()
cus.CustomerId = CustomerId
cus.Name = Name
cus.PhoneNumber = PhoneNumber
cus.EmailAddress = EmailAddress
cus.StreetLine = StreetLine
cus.City = City
cus.StateCode = StateCode
cus.PostalCode = PostalCode
cus.save()
queryset = Customers.objects.all()
serializer_class = CustomersSerializer









share|improve this question
























  • It should work, although you don't need .iterator() (if customer["@Id"] not in queryset1 would work also). There must be another reason why the json value is not in the values list: str versus int?

    – dirkgroten
    Mar 8 at 16:28











  • have you printed the queryset and the JSON data to see if it is really present? And are you sure that both have the same data type?

    – Ralf
    Mar 8 at 16:30













0












0








0








I am reading a json file from a website and if the record is not in my Customers queryset I want to create a new Customer for that record. What is happening is when I iterate over the queryset, Django is trying to create a new Customer even when it is already in the queryset.



Please see my code below:



from rest_framework import generics
from customer.models import Customers
from .serializers import CustomersSerializer
import json
import urllib.request

class CustomerAPIView(generics.ListAPIView):
j = urllib.request.urlopen("https://web.njit.edu/~jsd38/json/customer.json")
customer_data = json.load(j)
queryset1 = Customers.objects.values_list('CustomerId', flat=True)
for customer in customer_data:
if customer["@Id"] not in queryset1.iterator():
CustomerId = customer["@Id"]
Name = customer["Name"]
PhoneNumber = customer["PhoneNumber"]
EmailAddress = customer["EmailAddress"]
StreetLine = customer["Address"]["StreetLine1"]
City = customer["Address"]["City"]
StateCode = customer["Address"]["StateCode"]
PostalCode = customer["Address"]["PostalCode"]
cus = Customers()
cus.CustomerId = CustomerId
cus.Name = Name
cus.PhoneNumber = PhoneNumber
cus.EmailAddress = EmailAddress
cus.StreetLine = StreetLine
cus.City = City
cus.StateCode = StateCode
cus.PostalCode = PostalCode
cus.save()
queryset = Customers.objects.all()
serializer_class = CustomersSerializer









share|improve this question
















I am reading a json file from a website and if the record is not in my Customers queryset I want to create a new Customer for that record. What is happening is when I iterate over the queryset, Django is trying to create a new Customer even when it is already in the queryset.



Please see my code below:



from rest_framework import generics
from customer.models import Customers
from .serializers import CustomersSerializer
import json
import urllib.request

class CustomerAPIView(generics.ListAPIView):
j = urllib.request.urlopen("https://web.njit.edu/~jsd38/json/customer.json")
customer_data = json.load(j)
queryset1 = Customers.objects.values_list('CustomerId', flat=True)
for customer in customer_data:
if customer["@Id"] not in queryset1.iterator():
CustomerId = customer["@Id"]
Name = customer["Name"]
PhoneNumber = customer["PhoneNumber"]
EmailAddress = customer["EmailAddress"]
StreetLine = customer["Address"]["StreetLine1"]
City = customer["Address"]["City"]
StateCode = customer["Address"]["StateCode"]
PostalCode = customer["Address"]["PostalCode"]
cus = Customers()
cus.CustomerId = CustomerId
cus.Name = Name
cus.PhoneNumber = PhoneNumber
cus.EmailAddress = EmailAddress
cus.StreetLine = StreetLine
cus.City = City
cus.StateCode = StateCode
cus.PostalCode = PostalCode
cus.save()
queryset = Customers.objects.all()
serializer_class = CustomersSerializer






python json django






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Mar 8 at 17:18









pistolpete

413311




413311










asked Mar 8 at 16:21









Jay DesaiJay Desai

1461416




1461416












  • It should work, although you don't need .iterator() (if customer["@Id"] not in queryset1 would work also). There must be another reason why the json value is not in the values list: str versus int?

    – dirkgroten
    Mar 8 at 16:28











  • have you printed the queryset and the JSON data to see if it is really present? And are you sure that both have the same data type?

    – Ralf
    Mar 8 at 16:30

















  • It should work, although you don't need .iterator() (if customer["@Id"] not in queryset1 would work also). There must be another reason why the json value is not in the values list: str versus int?

    – dirkgroten
    Mar 8 at 16:28











  • have you printed the queryset and the JSON data to see if it is really present? And are you sure that both have the same data type?

    – Ralf
    Mar 8 at 16:30
















It should work, although you don't need .iterator() (if customer["@Id"] not in queryset1 would work also). There must be another reason why the json value is not in the values list: str versus int?

– dirkgroten
Mar 8 at 16:28





It should work, although you don't need .iterator() (if customer["@Id"] not in queryset1 would work also). There must be another reason why the json value is not in the values list: str versus int?

– dirkgroten
Mar 8 at 16:28













have you printed the queryset and the JSON data to see if it is really present? And are you sure that both have the same data type?

– Ralf
Mar 8 at 16:30





have you printed the queryset and the JSON data to see if it is really present? And are you sure that both have the same data type?

– Ralf
Mar 8 at 16:30












1 Answer
1






active

oldest

votes


















1














Your JSON is returning strings for the "@Id" key, I'm assuming your model Customers has integers as CustomerId field.



You should convert them to str or int:



if int(customer["@Id"]) not in queryset1:
...





share|improve this answer























    Your Answer






    StackExchange.ifUsing("editor", function ()
    StackExchange.using("externalEditor", function ()
    StackExchange.using("snippets", function ()
    StackExchange.snippets.init();
    );
    );
    , "code-snippets");

    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "1"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55067121%2fhow-to-iterate-over-query-list-of-django-model%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    1














    Your JSON is returning strings for the "@Id" key, I'm assuming your model Customers has integers as CustomerId field.



    You should convert them to str or int:



    if int(customer["@Id"]) not in queryset1:
    ...





    share|improve this answer



























      1














      Your JSON is returning strings for the "@Id" key, I'm assuming your model Customers has integers as CustomerId field.



      You should convert them to str or int:



      if int(customer["@Id"]) not in queryset1:
      ...





      share|improve this answer

























        1












        1








        1







        Your JSON is returning strings for the "@Id" key, I'm assuming your model Customers has integers as CustomerId field.



        You should convert them to str or int:



        if int(customer["@Id"]) not in queryset1:
        ...





        share|improve this answer













        Your JSON is returning strings for the "@Id" key, I'm assuming your model Customers has integers as CustomerId field.



        You should convert them to str or int:



        if int(customer["@Id"]) not in queryset1:
        ...






        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Mar 8 at 16:31









        dirkgrotendirkgroten

        6,46611424




        6,46611424





























            draft saved

            draft discarded
















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55067121%2fhow-to-iterate-over-query-list-of-django-model%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Can't initialize raids on a new ASUS Prime B360M-A motherboard2019 Community Moderator ElectionSimilar to RAID config yet more like mirroring solution?Can't get motherboard serial numberWhy does the BIOS entry point start with a WBINVD instruction?UEFI performance Asus Maximus V Extreme

            Identity Server 4 is not redirecting to Angular app after login2019 Community Moderator ElectionIdentity Server 4 and dockerIdentityserver implicit flow unauthorized_clientIdentityServer Hybrid Flow - Access Token is null after user successful loginIdentity Server to MVC client : Page Redirect After loginLogin with Steam OpenId(oidc-client-js)Identity Server 4+.NET Core 2.0 + IdentityIdentityServer4 post-login redirect not working in Edge browserCall to IdentityServer4 generates System.NullReferenceException: Object reference not set to an instance of an objectIdentityServer4 without HTTPS not workingHow to get Authorization code from identity server without login form

            2005 Ahvaz unrest Contents Background Causes Casualties Aftermath See also References Navigation menue"At Least 10 Are Killed by Bombs in Iran""Iran"Archived"Arab-Iranians in Iran to make April 15 'Day of Fury'"State of Mind, State of Order: Reactions to Ethnic Unrest in the Islamic Republic of Iran.10.1111/j.1754-9469.2008.00028.x"Iran hangs Arab separatists"Iran Overview from ArchivedConstitution of the Islamic Republic of Iran"Tehran puzzled by forged 'riots' letter""Iran and its minorities: Down in the second class""Iran: Handling Of Ahvaz Unrest Could End With Televised Confessions""Bombings Rock Iran Ahead of Election""Five die in Iran ethnic clashes""Iran: Need for restraint as anniversary of unrest in Khuzestan approaches"Archived"Iranian Sunni protesters killed in clashes with security forces"Archived