Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [Symfony]Generowanie interfejsu CRUD - kilka pytań
Czapla
post
Post #1





Grupa: Zarejestrowani
Postów: 130
Pomógł: 3
Dołączył: 10.12.2007
Skąd: Bielsko-Biała

Ostrzeżenie: (0%)
-----


Symfony dopiero się uczę, strasznie to zadmatwane. Kupiłem książkę od symfony po Polsku i zgłębiam Jobleta
Mimo to dalej mam kilka pytań odnośnie admin generatora.
W starszych wersja do generowania CRUD używało się propel:generate-admin.
1. Czy komendy propel:generate-admin i propel:init-admin to to samo?
2. Do czego służy propel:generate-admin skoro interfejs może generować komenda propel:generate-module?
3. Mamy 2 tabele: jedna posiada klucz obcy do tabeli test_dowiazanie.
  1. propel:
  2. test:
  3. _attributes: {phpName: test, idMethod: native}
  4. test_id: {type: integer, required: true, primaryKey: true, index: unique, autoIncrement: true}
  5. test_dowid: {type: integer, foreignTable: test_dowiazanie, foreignReference: test_dow_id}
  6. test: {type: longvarchar}
  7. test_dowiazanie:
  8. _attributes: {phpName: test_dowiazanie, idMethod: native}
  9. test_dow_id: {type: integer, required: true, primaryKey: true, index: unique, autoIncrement: true}
  10. test_dow: {type: longvarchar}

Po wygenerowaniu propel:build-all i propel:generate-module aplikacja_testowa modul_testowy test otrzymuje błąd "The server returned a "500 Internal Server Error."" przy próbie zalinkowania do editSuccess i newSuccess. Winę ponosi plik _form.php. Po zarymowaniu w tych plikach odwolania do formularza
  1. <?php //include_partial('form', array('form' => $form))
  2. echo "test";
  3. ?>

tekst "test" zostanie wyświetlony.
Ale dlaczego otrzymuje błąd w tych dwóch plikach? Błąd nie pojawia się jeżeli stworze jedną tabelę bez żadnych relacji do innej.

Pozdrawiam






Pilnie potrzebuje rozwiązania na postawione pytanie nr 3.

Tabela, która nie ma żadnych dowiązań do innych wyświetla się prawidłowo tz po kliknięciu na link New - > zostaje przeniesiony do formularza New
(IMG:http://images44.fotosik.pl/249/f00ea08f6d7ce6b3m.png)

Natomiast tabele, które mają jakieś relacje [job - patrz przykład niżej] mają uszkodzone formularze newSuccess i EditSuccess.
(IMG:http://images36.fotosik.pl/136/9395b15ee4bedbd7m.png)

Skopiowale schemat jobleta ale dalej jest to samo!
  1. propel:
  2. category:
  3. _attributes: {phpName: category, idMethod: native}
  4. id: ~
  5. name: { type: varchar(255), required: true }
  6.  
  7. job:
  8. _attributes: {phpName: job, idMethod: native}
  9. id: ~
  10. category_id: { type: integer, foreignTable: category, foreignReference: id, required: true }
  11. type: { type: varchar(255) }
  12. company: { type: varchar(255), required: true }
  13. logo: { type: varchar(255) }
  14. url: { type: varchar(255) }
  15. position: { type: varchar(255), required: true }
  16. location: { type: varchar(255), required: true }
  17. description: { type: longvarchar, required: true }
  18. how_to_apply: { type: longvarchar, required: true }
  19. token: { type: varchar(255), required: true, index: unique }
  20. is_public: { type: boolean, required: true, default: 1 }
  21. is_activated: { type: boolean, required: true, default: 0 }
  22. email: { type: varchar(255), required: true }
  23. expires_at: { type: timestamp, required: true }
  24. created_at: ~
  25. updated_at: ~


Mam Symfony 1.4.1 i NetBeans 6.8

Pozdrawiam i czekam na odpowiedź
Go to the top of the page
+Quote Post
destroyerr
post
Post #2





Grupa: Zarejestrowani
Postów: 879
Pomógł: 189
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----


Polecam zorientować się co dokładnie nie działa poprzez załączenie środowiska developerskiego
Go to the top of the page
+Quote Post
Czapla
post
Post #3





Grupa: Zarejestrowani
Postów: 130
Pomógł: 3
Dołączył: 10.12.2007
Skąd: Bielsko-Biała

Ostrzeżenie: (0%)
-----


(IMG:http://images36.fotosik.pl/137/ac390a3c947392fbm.png)

W pliku _form zamieniam category_id na name
  1. <tr>
  2. <th><?php echo $form['name']->renderLabel() ?></th> //id_category na name
  3. <td>
  4. <?php echo $form['name']->renderError() ?>
  5. <?php echo $form['name'] ?>
  6. </td>
  7. </tr>


wiem że muszę stworzyć funkcje w lib/modeljob.php
  1. public function __toString() {
  2.  
  3. }


teraz właśnie nie wiem co mam pobrać name, category czy categoryId?


Ten post edytował Czapla 19.01.2010, 17:28:46
Go to the top of the page
+Quote Post
destroyerr
post
Post #4





Grupa: Zarejestrowani
Postów: 879
Pomógł: 189
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----


Czy nie widzisz różnicy pomiędzy __toString a toString?

Po Twojej edycji:
Której części błędu nie rozumiesz?

Ten post edytował destroyerr 19.01.2010, 17:18:35
Go to the top of the page
+Quote Post
Czapla
post
Post #5





Grupa: Zarejestrowani
Postów: 130
Pomógł: 3
Dołączył: 10.12.2007
Skąd: Bielsko-Biała

Ostrzeżenie: (0%)
-----


sory zamotałem trochę, ale wszystko się udało

okejka zasłużona (IMG:style_emoticons/default/smile.gif)

Ten post edytował Czapla 19.01.2010, 17:47:28
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 20:45