konto usunięte

Temat: Django - wyszukiwanie

Zainteresowałem się ostatnio Django i muszę przyznać że zrobiło na mnie duże wrażenie. Natknąłem się jednak na pewien problem:

Poniżej fragment models.py:

class Pracownik(models.Model):
nazwa = models.CharField(maxlength=20)
def __str__(self):
return self.nazwa
class Admin:
pass

class Main(models.Model):
kolory = models.IntegerField()
druk_wykonal = models.ForeignKey(Pracownik,related_name="druk_wykonal")



Przeczytałem w dokumentacji że aby zrobić wyszukiwanie w tabeli Main według pola "druk wykonal" jest możliwa taka konstrukcja:

search_fields = ['Pracownik__druk_wykonal']

Niestety wyszukiwanie nie działa. Ma ktoś jakiś pomysł?
Piotr Maliński

Piotr Maliński Programista
Python/Django

Temat: Django - wyszukiwanie

related_name="druk_wykonal" nie jest potrzebne.

1. co znaczy nie działa ?

2. druk_wykonal.nazwa by szukać nazwę powinno działać, chyba ;)

konto usunięte

Temat: Django - wyszukiwanie

Piotr M.:
related_name="druk_wykonal" nie jest potrzebne.

1. co znaczy nie działa ?

Znaczy zwraca wszystkie rekordy.

Pełny models.py:
http://www.herbaciarnia.net/models.pyTomasz K. edytował(a) ten post dnia 06.06.07 o godzinie 11:13

konto usunięte

Temat: Django - wyszukiwanie

Tomasz K.:
Piotr M.:
related_name="druk_wykonal" nie jest potrzebne.

1. co znaczy nie działa ?

Znaczy zwraca wszystkie rekordy.

Pełny models.py:
http://www.herbaciarnia.net/models.pyTomasz K. edytował(a) ten post dnia 06.06.07 o godzinie 11:13

Pewnie teraz już znasz odpowiedź ale :D

Odwoływanie się spod jednego modelu do innego to kompletne nieporozumienie.
Nie rozumiem dlaczego nie odwoływałeś się bezpośrednio do "druk_wywokonał" (czyli bezpośrednio do pola)

Po drugie z doświadczenia wiem że wyszukiwanie ma jakikolwiek sens przy tekstach, nie zaś przy np. nazwiskach pracowników, lepiej jest zastosować filtrowanie, jest bardziej przejrzyste chyba, że w firmie druk może wykonać druk więcej pracowników niż zmieści się nazwisk na side barze :D

Następna dyskusja:

warPy na PW - Wprowadzenie ...




Wyślij zaproszenie do