3

コンソールを見つけて、次のように実行します。

root@valugi-laptop:/var/www/sandbox/hello# php console
Symfony version 2.0.0-DEV - hello

Usage:
  Symfony [options] command [arguments]

Options:
  --help      -h  Display this help message.
  --quiet     -q  Do not output any message.
  --verbose   -v  Increase verbosity of messages.
  --version   -V  Display this program version.
  --color     -c  Force ANSI color output.
  --no-interaction -n  Do not ask any interactive question.
  --shell     -s  Launch the shell.

Available commands:
  help               Displays help for a command (?)
  list               Lists commands
assets
  :install           
bundle
  :pharize           
container
  :graphviz          
doctrine
  :generate-proxies  
init
  :application       
  :bundle            
router
  :debug             Displays current routes for an application
  :dump-apache       

しかし、これらのコマンドは実行できません。私はこのようにしようとしています:

phpコンソールSymfony-h

しかし、私は得る

[InvalidArgumentException]         
Command "Symfony" is not defined.  

助言がありますか?

4

6 に答える 6

6

コンソールは次のように使用されます。$ php app/console [command name]

于 2011-02-07T11:47:15.997 に答える
2

アプリのルートから:./app/console --shell

于 2010-10-28T14:29:27.350 に答える
1

以下を使用して、新しい symfony2 バンドルを作成します。

php app/console init:bundle Acme\\DemoBundle src

これにより、次のディレクトリ構造で src に新しいバンドルが作成されます。

src/Acme/DemoBundle/
                    AcmeDemoBundle.php
                    Controller/
                               DefaultController.php
                    Resources/
                              config/
                                     routing.yml
                              views/
                                    Default/
                                            index.html.twig

名前空間は になりますAcme\DemoBundle

于 2011-03-18T19:36:45.543 に答える
1

自分で答えを見つけてください。

root@valugi-laptop:/var/www/sandbox/hello# chmod 777 /var/www/sandbox/src/Bundle
root@valugi-laptop:/var/www/sandbox/hello# php console init:bundle "Bundle\\ValugiBundle"
于 2010-06-01T21:32:16.540 に答える
0

プロジェクトのどこからでも CLI ツールに簡単にアクセスできるようにすることで、これを支援する bash スクリプトをまとめました。ダウンロードして実行可能にし、PATH (たとえば /usr/local/bin/) に入れます。

その後、CLI ツールに到達するためにプロジェクトのルートにいる必要はありません。すぐに発砲しsf <command>ます。Symfony 1.3/1.4 と Symfony2 の両方で機能します。

于 2011-04-13T14:57:26.747 に答える
-1

私はあなた自身の答えに投票しようとしましたが、私にはそれに対する十分な担当者がいません!

-

Sergiとokは正確に答えましたが、これを読んでいる人があなたのように混乱した場合に備えて、拡張します。

自分でフォルダ名を簡単に作成できないので、「phpconsoleSymfony」を使用する必要があると考えました。

ホームフォルダから作業するのが好きです。ログインするたびにそこから開始するので、自宅に次のようなフォルダを作成します。
~/web/sandbox.sf2

次に、次のように/ var/wwwへのシンボリックリンクを使用できます。
sudo ln -s ~/web/sandbox.sf2/home/myusername/web/sandbox.sf2

したがって、ファイルで作業するときは、すでにsymfony2プロジェクトに参加していることがわかります。(最初はそのように使用するのも変だと思いましたが、慣れて、Tobiasと同じ種類の回答、たとえばsf2 init:bundleやsf listなどのアプリ/コンソールをラップするbinスクリプトを使用しました)

明らかにユーザー権限の問題もあります(http://google.com/search?q=linux+permissions、2番目の結果は良さそうです)。

ユーザー/グループとしてファイルとフォルダーを編集できることを確認してください。php app / consoleは、使用したユーザー(この場合はroot)として実行されます。また、apacheユーザー/グループがファイルを読み取れることを確認してください。

-

そして、何かが機能していないときは、rootアカウントを使用して777-Rをchmodしないでください。Webサーバーをワールドワイドウェブに公開する場合は、単純な所有権の許可、その簡単で必要な概念をテストします。

于 2011-08-29T05:28:02.633 に答える