Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony] Nie widzi polecenia propel
Max Damage
post
Post #1





Grupa: Zarejestrowani
Postów: 246
Pomógł: 19
Dołączył: 14.06.2007

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


Cześć, zainstalowałem sobie symfony i stworzyłem projekt, schemat a teraz chce wygenerować sql ze schematu. Piszę więc:
php symfony propel:build-sql

Po czym wypisuje mi:
There are no tasks defined in the "propel" namespace.

Wyszukałem w sieci, aby zmienić linijkę w ProjectConfiguration.class.php na taką:
$this->enableAllPluginsExcept(array('sfDoctrinePlugin'));

Ale to nie pomaga. Nadal wyświetla to samo.
Korzystam z tego poradnika, mam wersje 1.4.1


--------------------
"Wszyscy wiedzą, że czegoś nie da się zrobić, i przychodzi taki jeden, który nie wie, że się nie da, i on właśnie to robi." - Albert Einstein
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
wiewiorek
post
Post #2





Grupa: Zarejestrowani
Postów: 247
Pomógł: 11
Dołączył: 5.09.2009

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


bo czytasz tutorial dla symfony 1.2 exclamation.gif biggrin.gif

  1. php symfony propel:build --sql
  2.  
Go to the top of the page
+Quote Post
Max Damage
post
Post #3





Grupa: Zarejestrowani
Postów: 246
Pomógł: 19
Dołączył: 14.06.2007

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


Fakt, w 1.4 polecenie jest faktycznie nieco inne.
Zresztą teraz zauważyłem że chyba pominąłem polecenie:
php symfony propel:build-schema

Chociaż w sumie już nie wiem, robię to pierwszy raz i trochę się gubię.
Ale to nie zmienia faktu że nadal nie widzi tego polecenia.


--------------------
"Wszyscy wiedzą, że czegoś nie da się zrobić, i przychodzi taki jeden, który nie wie, że się nie da, i on właśnie to robi." - Albert Einstein
Go to the top of the page
+Quote Post
wiewiorek
post
Post #4





Grupa: Zarejestrowani
Postów: 247
Pomógł: 11
Dołączył: 5.09.2009

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


  1. php symfony doctrine:build-schema


Tworzy schemat na podstawie istniejacej bazy, nie nalezy uzywac tego polecenia - przynajmniej w symfony 1.2 z zainstalowanym sfGuardPlugin tworzylo pliki modeli sfGuardPlugin tam gdzie inne modele zamiast w oddzielnym folderze, tzn. po zainstalowaniu sfGuardPlugin byly wygenerowane modele w sfGuardPlugin w oddzielnym folderze, a po zbudowaniu schematu te same pliki byly tworzone w miejsce gdzie inne modele, co bylo bez sensu i potem przy tworzeniu zapytan byly rozne cuda i bledy.

Wydajesz polecenie:
  1. php symfony propel:build --all --no-confirmation


To ci zbuduje modele, formularze itd. - wszystko co trzeba na podstawie stworzonego przez ciebie schematu.


Poza tym polecam Doctrine, w Symfony 2 Propel zostanie najprawdopodobniej calkowicie usuniety.

Ten post edytował wiewiorek 15.12.2009, 12:29:27
Go to the top of the page
+Quote Post
Max Damage
post
Post #5





Grupa: Zarejestrowani
Postów: 246
Pomógł: 19
Dołączył: 14.06.2007

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


Dzięki za wyjaśnienie.
Polecenie z propel nadal nie działa, ale dobra może być doctrine, póki co wszystko mi jedno. Wpisałem tak:
php symfony doctrine:build --all --no-confirmation

Wypisuje mi tak:
>> doctrine Dropping "doctrine" database
>> doctrine Creating "all" environment "doctrine" database
>> doctrine generating model classes
>> file+ C:\Documents and Settings\Rafa│...\Temp/doctrine_schema_92146.yml
No yml schema found in C:\Documents and Settings\Rafa│\Ustawienia lokalne\Temp/doctrine_schema_92146.yml

Przy czym plik doctrine_schema_92146.yml powstaje, tyle że jego zawartość to: { }
Kolejne polecenie i:
php symfony doctrine:insert-sql
>> doctrine created tables successfully
You must pass a valid path to a directory containing Doctrine models

Niby frameworki mają ułatwiać pisanie stron, ale ten póki co to jest nieźle zakręcony. Najpierw nie mogłem zainstalować pakietu pear z wampa, potem się chwilowo zaciąłem na zmiennych środowiskowych i ściągnięciu symfony, a teraz jeszcze baza danych. A ja się nie tak dawno dziwiłem że kohana wymaga ode mnie oprócz instalacji, grzebania w htaccess.


--------------------
"Wszyscy wiedzą, że czegoś nie da się zrobić, i przychodzi taki jeden, który nie wie, że się nie da, i on właśnie to robi." - Albert Einstein
Go to the top of the page
+Quote Post
wiewiorek
post
Post #6





Grupa: Zarejestrowani
Postów: 247
Pomógł: 11
Dołączył: 5.09.2009

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


Ale jak to ten plik powstaje ? Gdzie ci on powstaje ?
Powinien byc plik schema.yml.

Insert SQL juz nie wykonuj, bo to polecenie build all ma to w sobie.
Pokaz zawartosc swego pliku schema.yml.

Ten post edytował wiewiorek 15.12.2009, 13:48:26
Go to the top of the page
+Quote Post
Max Damage
post
Post #7





Grupa: Zarejestrowani
Postów: 246
Pomógł: 19
Dołączył: 14.06.2007

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


Zawartość pliku schema.yml jest taka jak na stronie http://www.symfony-project.org/jobeet/1_4/Doctrine/en/03
Zawartość wkleiłem do config/doctrine/schema.yml
A plik powstaje w C:\Documents and Settings\Rafał\Ustawienia lokalne\Temp


--------------------
"Wszyscy wiedzą, że czegoś nie da się zrobić, i przychodzi taki jeden, który nie wie, że się nie da, i on właśnie to robi." - Albert Einstein
Go to the top of the page
+Quote Post
destroyerr
post
Post #8





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

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


@Max Damage jeśli możesz to pokaż nam Twój plik: ProjectConfiguration.class.php. Coś jest nie tak, mimo, że wyłączyłeś plugin sfDoctrinePlugin on nadal działa, a nie działa Propel.

@wiewiorek przepraszam, ale mam wrażenie, że wprowadziłeś autora w błąd. Napisałeś mu aby skorzystał z polecenia z przestrzeni Doctrine, a autor zaznaczył, że korzysta z Propela. Nie ma też znaczenia czy tutorial jest dla wersji 1.2 czy 1.4, dla obydwu istnieją te polecenia.
Co do Symfony 2 i Propela, było to powiedziane zanim Propel zaczął być reanimowany. Poza tym w Symfony 2 i tak będzie wykorzystane Doctrine 2, więc wybór teraz ma niewielkie znaczenie na przyszłość.
Go to the top of the page
+Quote Post
Max Damage
post
Post #9





Grupa: Zarejestrowani
Postów: 246
Pomógł: 19
Dołączył: 14.06.2007

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


Faktycznie funkcja disablePlugins wyrzucała mi wyjątek na stronie. Ściągnąłem jeszcze raz symfony, tym razem nie za pomocą pear, a z oficjalnej strony, wersję 1.2. Zrobiłem jeszcze raz wszystko po kolei i zadziałało. Trochę dziwna sprawa, bo mam wrażenie że poza nieco inaczej brzmiącymi poleceniami do konfiguracji wszystko zrobiłem tak samo. Dzięki za pomoc.


--------------------
"Wszyscy wiedzą, że czegoś nie da się zrobić, i przychodzi taki jeden, który nie wie, że się nie da, i on właśnie to robi." - Albert Einstein
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 21.08.2025 - 07:29