• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Python/Django - dodawanie do bazy danych analogicznie do modelu w innej aplikacji

Object Storage Arubacloud
0 głosów
652 wizyt
pytanie zadane 31 maja 2016 w Python przez RobsonWD Nowicjusz (220 p.)
edycja 31 maja 2016 przez RobsonWD

Cześć wszystkim,

Mam następujący problem.

Mam stworzoną apkę products i tam w models następującą klasę:

class Cars(models.Model):
    make = models.CharField(max_length=64)
    model = models.CharField(max_length=64)
    id = models.IntegerField(max_length=64)
    price = models.FloatField(blank=True, null=True)
    currency = models.CharField(max_length=3, default='PLN')

 

Natomiast w drugiej apce i pliku cars_list mam generowaną dynamicznie z pliku listę z autami którą chciałbym dodać do bazy. Lista wygląda jak poniżej:

new_cars = [ 
{'make': 'Audi', 'model' : 'A3', 'id': 133, 'price' : 43000, 'currency': 'PLN'}, {'make': 'Subaru', 'model' : 'Impreza WRX', 'id': 218, 'price' : 75000, 'currency': 'PLN'}, 
{'make': 'BMW', 'model' : '530', 'id': 466, 'price' : 143000, 'currency': 'PLN'}
]

 

Jak to ugryźć w django, aby dane z innej aplikacji zapisywać do bazy używając innej apki?

Z góry dzięki za wszelkie porady.

komentarz 31 maja 2016 przez adrian17 Ekspert (344,860 p.)

Lista wygląda jak poniżej:

Albo to nie Python, albo to nie jest poprawny Python.

komentarz 31 maja 2016 przez ZakosiliMiNeta Nałogowiec (30,870 p.)
Może autorowi chodziło o słownik, bo to bardziej słownik przypomina
komentarz 31 maja 2016 przez adrian17 Ekspert (344,860 p.)
Tak się domyślam, tylko dziwne że napisał z ręki coś takiego dziwnego zamiast przekopiować prawdziwy przykład z kodu.

1 odpowiedź

0 głosów
odpowiedź 31 maja 2016 przez adrian17 Ekspert (344,860 p.)
wybrane 31 maja 2016 przez RobsonWD
 
Najlepsza

Nie rozumiem problemu. To, że są w osobnych "apkach" Django nic nie zmienia:

new_cars = [ 
	{'make': 'Audi', 'model' : 'A3', 'id': 133, 'price' : 43000, 'currency': 'PLN'},
	{'make': 'Subaru', 'model' : 'Impreza WRX', 'id': 218, 'price' : 75000, 'currency': 'PLN'} 
]

for car in new_cars:
	Cars.objects.create(
		make=car["make"],
		model=car["model"],
		id=car["id"],
		price=car["price"],
		currency=car["currency"]
	)

Przy okazji, po co Ci "id" w modelu Django?

komentarz 31 maja 2016 przez RobsonWD Nowicjusz (220 p.)
Dzięki wielkie,

Chodziło mi właśnie o to rozdzielenie funkcjonalności. Dopiero raczkuję w Django, stąd moje pytanie, natomiast odnosząc się do pytania - id zmieniłem na car_id, ponieważ to car_id ma być numerkiem konkretnego auta z katalogu, masz rację, samo 'id' w bazie to inna sprawa i to błąd z mojej strony.

Jeszcze raz dzięki za pomoc :)

Podobne pytania

0 głosów
1 odpowiedź 341 wizyt
pytanie zadane 1 listopada 2018 w Python przez niezalogowany
0 głosów
0 odpowiedzi 125 wizyt
0 głosów
3 odpowiedzi 1,385 wizyt
pytanie zadane 6 listopada 2015 w Python przez Kaspero Obywatel (1,920 p.)

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...