2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

fuelの勉強めも

Last updated at Posted at 2015-10-27
  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パッケージ

2
4
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
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?