Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Symfony] foreign - zamiast cyfr - nazwa
Forum PHP.pl > Forum > PHP > Frameworki
stirith
Mam tabele:

Wojewodztwo:
id
nazwa
---------

Powiat:
id
id_wojewodztwo
nazwa


Jak wyświetlam powiat, to zamiast nazwy wojewodztwa wyświetla się jego ID, jak mam zrobić aby się wyświetlała nazwa ? -> pole "nazwa"

Jak kiedyś pole to nazwałem od ang "name" -> nie było problemu, jak po polsku to się cyfry pokazują...
Crozin
Symfony nie ma tu wiele do rzeczy - to (w zależności od tego czego używasz) albo sprawa Doctrine, albo Propela, albo czegokolwiek tam używasz. Musisz po prosty wykonać zapytanie z JOINem:
Kod
SELECT ... FROM powiat p INNER JOIN wojewodztwo w ON p.id_wojewodztwo = w.id
stirith
Używam Doctrine,

Oczywiście że łączę dwie tabele, problem polega na tym że jak jedna z kolumn ma nazwe "name" -> to się ładnie po złączeniu w formularzu w select nazwa wyświetla -> natomiast jeżeli nie ma jakiejś nazwy ang w tabeli np "title, name etc.." ba są tylko polskie -> wtedy się w formularzu w select wyświetla tylko cyfra...znalazłem gdzieś w kodzie tablicę gdzie właśnie dopisałem polską nazwę kolumny którą chce aby się wyświetlała, ale zaktualizowałem symfony z 1.4.4 do 1.4.5 i nie pamiętam gdzie to było...


Chodzi tutaj bardziej o formularz i select mam w formularzu coś takiego:


Kod
new sfWidgetFormDoctrineChoice(array('model' => 'wojewodztwo', 'add_empty' => false)),


I jeżeli mam taką tabelę:

wojewodztwo:
id
nazwa


to się wyświetla tylko cyfra

jeżeli mam:

wojewodztwo:
id
name

To się ładnie wyświetla nazwa wojewodztwa,

Jak zrobić aby się wyświetlało też mając polskie nazwy w tabelach ?
bikerszymek
zerknij sobie do środka sfWidgetFormDoctrineChoice wszystko jest wystarczająco dobrze udokumentowane
XianN
Musisz dopisac do Wojewodztwo.class.php:
  1. public function __toString()
  2. {
  3. return $this->nazwa;
  4. }


Jesli __toString() masz wykozystane w inny sposob mozesz dopisac sobie jakas inna fcje, a do sfWidgetFormDoctrineChoice dorzucic opcje 'model' (zobacz: sfWidgetFormDoctrineChoice::configure()).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.