FuelPHP 作成手順

■FuelPHPプロジェクトの作成

 ・php.ini で 下記extention のコメントを外す。

  extension=php_fileinfo.dll


 ・下記URLからzipファイルをダウンロードし、プロジェクトフォルダへ解凍する。

  http://fuelphp.jp/docs/1.9/installation/download.html


 ・httpd.conf にエイリアスの設定をする。

  <IfModule alias_module>

    Alias /fuel "C:/pleiades/fuelphp1.8/public"

    <Directory "C:/pleiades/fuelphp1.8/public">

      Allow from all

    </Directory>

    ScriptAlias /cgi-bin/ "C:/pleiades/apache-2.4/cgi-bin/"

  </IfModule>


  http://localhost/fule/index.php へアクセスして確認する。


■設定

 ・app/config/config.php

   'language' => 'ja', // Default language

   'language_fallback' => 'en', // Fallback language when file isn't available for default language

   'locale' => null, // PHP set_locale() setting, null to not set

   'encoding' => 'UTF-8',

   'default_timezone' => 'Asia/Tokyo',

   'always_load' => array(

     'packages' => array(

             'orm',

     ),

   ),


 ・app/config/routes.php

  '_root_' => 'welcome/index', // The default route

  デフォルトでは welcomeコントローラの action_index()メソッドにアクセスする。


 ・プロファイルを表示する

  app/config/config.php

   'profiling' => true,


  app/config/db.php

   return array(

      'default' => array(

         'connection' => array(

            'dsn' => 'mysql:host=localhost;dbname=[db-name]',

            'username' => '[user-name]',

            'password' => '[password]',

         ),

      'profiling' => true,

      ),

   );


■DB設定

 ・app/config/db.php

  app/config/production/db.php

   return array(

     'default' => array(

       'connection' => array(

         'dsn' => 'mysql:host=localhost;dbname=[db-name]',

         'username' => '[user-name]',

         'password' => '[password]',

       ),

     ),

   );


■モデル、Scaffoldの自動生成

 ・app/migrations フォルダにファイルがないと、oilコマンドでエラーが発生することがある。

  ⇒ 空ファイル「001_create_posts.php」を置いておく。


 ・既存テーブルから Model を作成する。

  >cd [path]\fuelphp1.8

  >php oil r fromdb:model posts(テーブル名)


  CRUDモデルの場合

  >php oil r fromdb:model posts(テーブル名) --crud


  上書きする場合

  >php oil r fromdb:model posts(テーブル名) -f


 ・既存テーブルから scaffold を作成する。

  >cd [path]\fuelphp1.8

  >php oil r fromdb:scaffold posts(テーブル名)

  (作成されるファイル)

  app/migrations/001_create_posts.php

  app/classes/model/post.php

  app/classes/controller/post.php

  app/views/post/index.php

  app/views/post/view.php

  app/views/post/create.php

  app/views/post/edit.php

  app/views/post/_form.php

  app/views/template.php


 ・管理画面(ログイン認証)を作成する。

  >cd [path]\fuelphp1.8

  >php oil g admin posts(テーブル名)

  (作成されるファイル)

  app/classes/controller/base.php

  app/classes/controller/admin.php

  app/classes/controller/admin/posts.php

  app/classes/model/post.php

  app/migrations/001_create_posts.php

  app/views/admin/template.php

  app/views/admin/dashboard.php

  app/views/admin/login.php

  app/views/admin/posts/index.php

  app/views/admin/posts/view.php

  app/views/admin/posts/create.php

  app/views/admin/posts/edit.php

  app/views/admin/posts/_form.php


  マイグレーションで、Authパッケージで必要なテーブルを作成する。

  >php oil refine migrate --packages=auth


  Apacheを再起動し、ビルトインWebサーバを起動する

  >cd [path]\fuelphp1.8

  >php oil server


  http://localhost:8000/admin/posts にアクセスする。

  admin/admin でログインする。


■Webサーバの起動

 ・Apacheを再起動し、ビルトインWebサーバを起動する。

  >cd [path]\fuelphp1.8

  >php oil server


  http://localhost:8000/post にアクセスする。