カテゴリ: コントローラー

ページ: << 1 2 3 4 5 6 7 8 >>

キャッシュの基本

パーマリンク 2008/07/28 16:49:16 著者: cakephp メール
カテゴリ: コントローラー

CakePHP1.2 RC2

キャッシュを書き込むには、

Cache::write('data', $data);


キャッシュを読み込むには、

$cache_data = Cache::read($data);
$cache_data = Cache::read('data');

[2008/8/27 修正]
$data は上記の書き込む時の $data とは別もので、動的に read で読み込む値を変えるのを想定して $data という変数を指定しておりました。
分かり難いので、修正しました。
蟹さん、ありがとうございます。



ファイルキャッシュの場合、通常 app/tmp/cache/ 配下にファイルが作成されます。
このパスを変更したい場合は、

Cache::config('default', array('engine' => 'File', 'path' => CACHE . 'sample' . DS));


キャッシュの有効期限は下記のように設定します。

Cache::set(array('duration' => '+1 day'));

IPアドレスの取得方法

パーマリンク 2008/07/22 07:20:01 著者: cakephp メール
カテゴリ: コンポーネント, コントローラー

CakePHP1.2 RC2

RequestHandlerコンポーネントのgetClientIPを呼び出すだけで取得できます。

    var $components = array('RequestHandler');

    function index() {
        $ipaddress = $this->RequestHandler->getClientIP();
    }

条件付きでのページ送り機能

パーマリンク 2008/07/12 10:33:59 著者: cakephp メール
カテゴリ: ヘルパー, ビュー, コントローラー

CakePHP1.2 RC2

ページ送りの基本については「ページ送り機能1.2 RC2(基本版)」をご覧ください。



View の「戻る」に条件を追加します。

<?php e($paginator->prev('戻る', array('url' => array('keyword' => urlencode($keyword))))); ?>



1 | 2 | 3 | 4 などのページ番号のリンクに条件を追加します。

<?php
    e($paginator->numbers(
                    array(
                        'separator' => '&nbsp;',
                        'modulus' => 14,
                        'url' => array('keyword' => urlencode($keyword))
                    )
                  ));
?>



あとは、Controller 側で $keyword に値をセットすることで、ページ送りの各リンクが ~/keyword:{$keyword} という感じになります。
※"keyword"という文字列は任意文字列

LIKE 文の作成方法

パーマリンク 2008/07/11 15:49:01 著者: cakephp メール
カテゴリ: コントローラー

CakePHP1.2 RC2

下記の様に、like を key に記載し、value を % で囲めばできます。

$conds = array(
            'name like' => '%hoge%'
         );
$data = $this->Sample->findAll($conds);

バリデーション

パーマリンク 2008/07/07 16:57:22 著者: cakephp メール
カテゴリ: モデル, ビュー, コントローラー

CakePHP1.2 RC2

CakePHP1.2 ではバリデーション機能が充実されましたので、より使いやすくなったと思います。

Controller
バリデーションを呼び出します。

if ($this->Sample->validates()) {
}


Model

<?php
class Sample extends AppModel
{
    var $validate = array(
        'name' => array(
            array(
                'rule' => 'ruleName',
                'message' => 'ルールに従って入力してください。'
            ),
            array(
                'rule' => array('customFunc', 'hoge'),
                'message' => '正しくありません。'
            ),
        ),
        'memo' => array(
            array(
                'rule' => 'ruleName',
                'message' => 'ルールに従って入力してください。'
            ),
        ),
    );

    /**
     * カスタムチェック
     */
    function customFunc($value, $param)
    {
        if (・・・・・・・・) {
            return false;
        }
        return true;
    }
}

ruleName に当たる部分の内容がとても充実しています(詳しくはこちら)が、それ以外のチェックを行いたい場合は、customFunc のように自由に function を作成し、rule から呼び出すことが出来ます。
$value には $this->data のデータが配列で入ってきます。


View

<?php e($form->error('Sample/name')); ?>

モデルで設定したメッセージを表示させたい箇所に上記のように記載します。

<< 1 2 3 4 5 6 7 8 >>

2017年10月
 << <   > >>
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

CakePHPに関する情報をまとめていきます。

開発スピードがアップできればうれしいです。

>>連絡はこちらへどうぞ



CakePHP最新版
CakePHP 1.2.3.8166


CakePHPの書籍

CakePHPによる実践Webアプリケーション開発

CakePHP1.2で作成する人にオススメ。
とても参考になります。

まるごとPHP!(vol.2)

安藤さんの解説が載っています。
AmazonのPagination部分は参考になります。

CakePHPによるWebアプリケーション開発

まだ読んだことありません

CakePHPポケットリファレンス
CakePHPポケットリファレンス
CakePHP1.2 でやるなら、これがあると何かと便利♪

CakePHP徹底入門
CakePHP徹底入門
CakePHP1.2 を今から始めるならここから

Fast CakePHP
Fast CakePHP
シンプルでわかりやすい CakePHP の入門書

CakePHPガイドブック
CakePHPガイドブック
CakePHP1.1 ではとても参考にした CakePHP 最初の入門書

検索

XMLフィード

16ブログ     powered by b2evolution