[ざっくり] cakephp3 インストール

ざっくりと、CakePHP3が動作するまでを説明。

環境はCentOSを想定。

事前にcomposerをインストールして、composerコマンドだけで、動くようにしておく。

以前書いた記事を参考に。 ざっくりComposer

作りたいプロジェクト名を決める。今回はcake3testとする。

Composerでインストール

作りたいプロジェクトのディレクトリに移動して以下のコマンドを実行。

MyProjectsというディレクトリだったら、MyProjects\cake3testで作成される。

ちなみに、ext-intlが無い旨のメッセージがでたら、yumからinstallして、再度チャレンジ。

わ~~っと画面が流れて、上手くインストールが進むと、

なんかフォルダのパーミッションがどうたらと聞かれる。

Yで答えたら、

とでて、configの下に、app.phpが生成されている。

これは、configのapp.default.phpにsalt値を入れて、app.phpという名前にしただけの模様。

CakePHP2の時は、似たような設定ファイルに手作業でsalt値入れたりしてた。

次に、httpd.confのドキュメントルートを、cake3test/webrootにしてアパッチ再起動。

これで、任意のIPにアクセスすればなんだか、オシャレなトップページへとんだ。

CakePHP3-1-1

よくみると、だいたい成功しているんだけど、databaseがエラーになっている。

CakePHP3-1-2

DataBaseを設定

mysqlでログイン

とりあえず、ローカルホストからアクセス可能なユーザーを作成

databaseはcake3testで作ったとする。

んで、権限を与える。

exit で一度でて、

先ほど作成したユーザーでログインして、 USE cake3test

下記のCREATE文を流す。

show tables;でusersがでれば、OK

これでDBの作成は完了。

config/app.php の Datasoruce の辺りを設定する。

これで、DBが繋がりグリーンになる。

CakePHP3-2

bakeコマンドで雛形を作成

cd でcake3testに移動して、

と作成したusersテーブルをbakeしてみる。

ワラワラっと流れて、下記のファイルが自動生成される。

  • /cake3test/src/Model/Table/UsersTable.php
  • /cake3test/src/Model/Entity/User.php
  • /cake3test/tests/Fixture/UsersFixture.php
  • /cake3test/tests/TestCase/Model/Table/UsersTableTest.php
  • /cake3test/src/Controller/UsersController.php
  • /cake3test/tests/TestCase/Controller/UsersControllerTest.php
  • /cake3test/src/Template/Users/index.ctp
  • /cake3test/src/Template/Users/view.ctp
  • /cake3test/src/Template/Users/add.ctp
  • /cake3test/src/Template/Users/edit.ctp

(CakePHP2の時にも思ったけどCake初心者の時は、bakeコマンドで勝手に作られる感じが嫌だったなー。)

http://xxxxxx/usersに行くと、なんか出来ている。

作成、編集、削除が一通りできている。

試しにユーザーを作成したり削除したりしたが、基本機能はこれで十分に思える。

CakePHP3-5

ひとまず「インストール」としては、ざっくりだが、完了。

パスワードが丸見えなので、次はこれを暗号化する。 => [CakePHP3] Setter(セッター)とGetter(ゲッター)をざっくりと知る

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">