Nowe posty

xx Migracja GRUB2 (0)
Wczoraj o 12:30:46
xx Przydatne Linki (4)
2019-08-23, 14:13:00
xx Awstat (0)
2019-08-22, 14:55:15
xx SMB - Access denied z Windows (9)
2019-08-19, 11:27:24
xx Kali Linux - książka. (0)
2019-08-19, 00:20:25
xx Arch - startx dla uruchomienia GNOME powoduje wyłączenie komputera (6)
2019-08-18, 14:37:04
xx Nie moge urchmomic laptopa - grub rescue. (1)
2019-08-17, 18:24:00
xx Po aktualizacji zniknęły niektóre funkcje (45)
2019-08-14, 06:39:01
xx Operacje na bitach. (4)
2019-08-10, 21:44:36
xx Pblem z montowaniem dysku sieciowego (1)
2019-08-09, 23:36:45

Autor Wątek: Relations symfony  (Przeczytany 4496 razy)

Offline

  • Users
  • Prawie jak Guru
  • ****
  • Wiadomości: 272
    • Zobacz profil
Relations symfony
« dnia: 2010-12-04, 22:32:56 »
Czy ktoś mógłby objaśnić mnie co znaczą foreignAlias, refClass, Class parametry w schema.yml (pliku konfiguracyjnym symfony)... Szukałem w dokumentacji Doctrine, ale znalazłem tylko przykładowe rozwiązania i nadal nie rozumię co one znaczą.

Offline Paweł Smoliński

  • Administrator
  • Guru
  • *****
  • Wiadomości: 593
    • Zobacz profil
Relations symfony
« Odpowiedź #1 dnia: 2010-12-04, 22:46:07 »
Jak wynika z pierwszego wyniku Google'a:
- foreignAlias to atrybut pod którym widzimy daną klasę z drugiej stronę relacji
- class i refClass służą do zdefiniowania relacji wiele-do-wielu
Gutta cavat lapidem non vi, sed saepe cadendo / sic homo doctus fit non vi sed saepe studendo

Offline

  • Users
  • Prawie jak Guru
  • ****
  • Wiadomości: 272
    • Zobacz profil
Relations symfony
« Odpowiedź #2 dnia: 2010-12-05, 10:51:46 »
Byłem już na tej stronie:
Cytuj
Szukałem w dokumentacji Doctrine, ale znalazłem tylko przykładowe rozwiązania
Cytuj
The foreignType and foreignAlias options allow you to customize the opposite end of the relationship.
ForeignType and foreignAlias opcje pozwalają dostosować drugi koniec relacji... Nie do końca jasne...

a class i refClass jest w ogóle nie wyjaśnione... Class jest też nie tylko w one-to-one..., o ile wiem to tylko refClass jest w many-to-many

Tak po za tym gdzie w pliku podajemy, do której tabeli to się tyczy... Gdy mamy contact_id i tabele contact to doctrine sam się domyśli, natomiast gdy jest inaczej to jak podać i gdzie

Cytuj
Normally it would have automatically generated User has one Contact and Contact has many User. The foreignType and foreignAlias options allow you to customize the opposite end of the relationship
foreignAlias pozwala nam zamienić z contact na usermodel... Tej tabeli w ogóle nie ma.. Więc co dla tej tabeli znaczy UserModel?

Cytuj
One to Many
---
User:
  columns:
    id:
      type: integer(4)
      primary: true
      autoincrement: true
    contact_id:
      type: integer(4)
    username:
      type: string(255)
    password:
      type: string(255)

Phonenumber:
  columns:
    id:
      type: integer(4)
      primary: true
      autoincrement: true
    name:
      type: string(255)
    user_id:
      type: integer(4)
  relations:
    User:
      foreignAlias: Phonenumbers
Many to Many
---
User:
  columns:
    id:
      type: integer(4)
      autoincrement: true
      primary: true
    username:
      type: string(255)
    password:
      type: string(255)
  attributes:
    export: all
    validate: true

Group:
  tableName: group_table
  columns:
    id:
      type: integer(4)
      autoincrement: true
      primary: true
    name:
      type: string(255)
  relations:
    Users:
      foreignAlias: Groups
      class: User
      refClass: GroupUser

GroupUser:
  columns:
    group_id:
      type: integer(4)
      primary: true
    user_id:
      type: integer(4)
      primary: true
  relations:
    Group:
      foreignAlias: GroupUsers
    User:
      foreignAlias: GroupUsers
W przykładzie one-to-many jak symfony wie, że trzeba contact_id powiązać z tabelą phonenumber?