4
Help us understand the problem. What are the problem?

More than 5 years have passed since last update.

posted at

updated at

fuelの勉強めも

  1. クックインストール
$ curl get.fuelphp.com/oil | sh
$ Token(hide):

もしインストール中、githubのurlでた場合
そのurlでアクセスして、gitアカウントでログイン
アクセスkeyの取得、そして、そこに貼り付けて
インストールが進められる

手動インストール

$ git clone git://github.com/fuel/fuel.git
$ php composer.phar self-update
$ php composer.phar update
$ php oil r install
  1. プロジェクト作成する
    $ oil create test

  2. timezoneの設定
    /etc/php.ini
    date.timezone = 'Asia/Tokyo'

  3. インストールできたかどうかの確認
    'test'というプロジェクトを作った場合、下記のURLでアクセスするとFuelPHPのWELCOME画面が表示される。
    http://localhost/test/public/

.htaccessうまくいかないときのチェック

/etc/httpd/conf/httpd.conf中
AllowOverride ALLになってるか

もしfuelの本体とpublic場所違うの場合
例えば、publicはDocumentRootで
fuelは/home/usernameにある
core.phpのパス設定

また
シンボリックリンクで/var/www/htmlとpublic
ln -s /home/username/test/public /var/www/html
これもうまくいかない場合は
fuelのディレクトリの.htaccessの設定のチェック

パッケージの利用

core.php
'always_load' => array(
    'packages' => array(
        'orm',
    ),
),

DBの設定

デフォルトはdevelopmentモード
うまくいかない場合

localhost to 127.0.0.1

/development/db.php
return array(
        'default' => array(
                'connection'  => array(
                        'dsn'        => 'mysql:host=localhost;dbname=fuel_dev',
                        'username'   => 'id',
                        'password'   => 'pw',
                ),
        ),
);

oilの使い方もろもろ

主に使うのは
oil g(generate) #コードの生成
oil refine [taskname] #タスクの実行

oil g(cakeのbake)controller,model,viewで自動生成

$ php oil g scaffold fuel_test title:string body:text
Creating migration: /home/vagrant/fuel/test/fuel/app/migrations/001_create_fuel_tests.php
Creating model: /home/vagrant/fuel/test/fuel/app/classes/model/fuel/test.php
Creating controller: /home/vagrant/fuel/test/fuel/app/classes/controller/fuel/test.php
Creating view: /home/vagrant/fuel/test/fuel/app/views/fuel/test/index.php
Creating view: /home/vagrant/fuel/test/fuel/app/views/fuel/test/view.php
Creating view: /home/vagrant/fuel/test/fuel/app/views/fuel/test/create.php
Creating view: /home/vagrant/fuel/test/fuel/app/views/fuel/test/edit.php
Creating view: /home/vagrant/fuel/test/fuel/app/views/fuel/test/_form.php

tbl fuel_test
その中に自動でid(PK,AI),created_at,updated_at追加されました。

oil refine migrateでdbの中にテーブルfuel_testの作成

$ php oil refine migrate

index.phpをURLから消す

次に fuel/app/config/config.php を下記のように編集します。

config.php
//'index_file'  => 'index.php',
  'index_file'  => false,

これだけの設定でダメの場合は、
下記のリンクを参考して、public/.htaccessの修正行ってください。
参照先

作成したのページのアクセス

simple,ormauth

auth用テーブルの作成
oil refine migrate --packages=auth
ormauth

oilメモ(admin付きの作り方)

  • authパッケージとsimpleauthドライブを使う場合

Contorller => C
View => V
Model => M

$php oil g scaffold post title:varchar[長さ] body:varchar[長さ](フロントの作成)
$php oil g admin post title:varchar body:varchar --sikp(フロントに対する管理画面の作成)

2015.12.04追記

column:type[length]:default:hoge:unique:null
カラム名:タイプ[長さ]:デフォルト:値:unique:null
カラム名:string => varchar[255] 同様
カラム名:int => int(11) 同様

構成は
app/classess/controller/posts/ #フロント
app/classess/controller/admin/posts/ #管理画面
[--skip]つけないと、エラーが発生する
post.phpのモデルファイルは同一ファイルを使ってます。

後はフロントが側に必要ないactionの削除
例えば:action_indexとaction_viewのみを残してる
その以外のcreate,edit,deleteのCとVを削除してもかまわない

既存テーブルから scaffold

$oil r fromdb:scaffold posts

fuelとajaxのメモ

ajaxで非同期通信を行うとき、
before内でset_global()を書かれた場合は
500エラーが発生することがあります。

参照
auth
auth2
fuelphpのauthパッケージ

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
4
Help us understand the problem. What are the problem?