LoginSignup
2
2

More than 5 years have passed since last update.

cakephp3をggrつつ触ってみる!! その1 環境構築編

Last updated at Posted at 2015-08-31

目次

  1. composerでmac osにインスコ
  2. cakeboxで表示
  3. 2.x系と3.0.4比べてみました〜
  4. チュートリアルやってみる

cakephp3が出て触ってみたかったのでメモる

ここにあったbookmarkerのチュートリアルをやってみます
http://book.cakephp.org/3.0/en/tutorials-and-examples/bookmarks/intro.html

php5.5 php intl pear composerがいりますね
cakephp/cakephp 3.0.x-dev requires ext-intl * -> the requested PHP extension intl is missing from your system.

curl -s https://getcomposer.org/installer | php

php composer.phar create-project --prefer-dist cakephp/app bookmarker

(tapする必要がある方はこちらを参照
http://qiita.com/boheanimato/items/0b665f84b80df5fa54fd)

セキュリティサルトとかpermissionとか勝手にやってくれるという神具合

cake2だとこの辺面倒臭かった、、、、

もしintlがなかったら以下を試してみてくだされ

php install php55/intl (既に入ってる人はいいです!!)

To finish installing intl for PHP 5.5:
  • /usr/local/etc/php/5.5/conf.d/ext-intl.ini was created, do not forget to remove it upon extension removal.
  • Validate installation via one of the following methods: *
  • Using PHP from a webserver:
  • - Restart your webserver.
  • - Write a PHP page that calls "phpinfo();"
  • - Load it in a browser and look for the info on the intl module.
  • - If you see it, you have been successful! *
  • Using PHP from the command line:
  • - Run "php -i" (command-line "phpinfo()")
  • - Look for the info on the intl module.
  • - If you see it, you have been successful!

上のメッセージが出るので php -iで確認してみて下さい

そして cd bookmaker に移動して

bin/cake server

して(rails -s的なあれ)

スクリーンショット 2015-08-31 9.58.08.png

この画面が表示されたら OK!!

既にdebug toolが入ってる有能具合(まあ普通あるかw)

ただ、database not connectになってると思うので
スクリーンショット 2015-08-31 10.03.49.png

vagrant virtual boxを使って環境構築してあげましょう!!

既に環境構築していて 俺はいらねーぜって方はちょっと読み飛ばして頂いて結構です!!

ここで便利なcakeboxを使いましょう(さっき見つけたw)

要件は以下なのでアップデートしてない人はしておいてくだされ

VirtualBox 4.0 or higher
Vagrant 1.6.0 or higher
a machine with at least 4GB of memory and 2 Cores

cakeboxはchefでubuntuベースのboxファイルを生成してくれるみたいです。

詳細は以下
http://cakebox.readthedocs.org/en/latest/features/

でルートdirで おもむろに

git clone https://github.com/alt3/cakebox.git

cd cakebox
cp Cakebox.yaml.default Cakebox.yaml

vagrant up

sshしたら

/Users/kosuke.tanihata/cakebox% vagrant ssh
Welcome to Ubuntu 14.04.1 LTS (GNU/Linux 3.13.0-24-generic x86_64)

  ____      _        ____
 / ___|__ _| | _____| __ )  _____  __
| |   / _` | |/ / _ \  _ \ / _ \ \/ /
| |__| (_| |   <  __/ |_) | (_) >  <
 \____\__,_|_|\_\___|____/ \___/_/\_\

って出ると思います。かっけーですね

mysql nginxがすでに入ってる いいね php は 5.6でした
細かい構成は以下!!

スクリーンショット 2015-08-31 10.51.10.png

db は mysql だけでログイン可能

laravelのhomestead意識していたりするのかな??

んで http://10.33.10.10/dashboard にログインすると、、、

スクリーンショット 2015-08-31 11.51.42.png

もうできてる、、、、、 

(ちなみに同じdirに別のcakeのプロジェクト入れたらsslエラーが出たので cakeboxいれて立ち上がるの確認してからappディレクトリの中に作った方がいいかもしれません 要検証 わかった人いたらこっそり教えて下さい)

vagrant ssh した所に おもむろに

cakebox application add mycake3.app 

って打つだけでプロジェクトが生成されます!!
(mycake3.appは各自リネームしてください!!)
そして vmではない方のcakeboxディレクトリの中のAppsって所と共有される設定になってます。

成功したら以下のメッセージが出るので言うとおりにしましょう

Creating virtual host
* Successfully created PHP-FPM virtual host
Creating databases
* Successfully created main database
* Successfully created test database
Configuring permissions
Updating configuration files
Application created using:
database => mycake3_app
framework => cakephp
framework_human => CakePHP 3.x
framework_short => cakephp3
installation_method => composer
majorversion => 3
path => /home/vagrant/Apps/mycake3.app
source => cakephp/app
url => mycake3.app
webroot => /home/vagrant/Apps/mycake3.app/webroot

Remember to update your hosts file with: 10.33.10.10 mycake3.app

(vimが入ってないのはマジ失点)

sudo apt-get install vim

sudo vim /etc/hosts して

 10.33.10.10 mycake3.app

これを書き込んであげましょう
(docには mycake3.appにアクセスしたら動くようになってたけど僕のは調子が悪く)

bin/cake server -H 0.0.0.0 を cakeのあるディレクトリで叩いてあげて

からアクセスしました。

僕はこの時sessionのパーミッションエラーが出ていたので、cakeboxにある
/var/lib/php5/sessionsのpermissionを書き換えておきました。

そしてリロードしたらなんとまあdashbordから見れるではありませんかあああ
test用アプリ用、両方のdbが用意されているという

スクリーンショット 2015-08-31 13.42.08.png

有能だ

そしてcake3の構成確認

スクリーンショット 2015-08-31 13.12.49.png

cakephp2のようにapp dirの中に全部あるのではなく結構バラけてる感じですね

そして、srcの中によく使うMVCが入ってます。

controllerは今まで通りっぽい

viewはtemplateってとこに入ってます

Modelは、、、、

増えてる!!

スクリーンショット 2015-08-31 13.22.39.png

fatcontroolerになって 次に fatmodelになっていたcake2のつらみがようやく、、、、

その2 チュートリアルをする に続く!!

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2