GoogleMap 特定ã®ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ã§è¡¨ç¤ºã•ã›ã‚‹

Ajax, Google No Comments »

Google AJAX Search API を使用ã—ã¦ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ã‚„使‰€ã‹ã‚‰è‡ªåˆ†ã®ã‚µã‚¤ãƒˆã« Google Map を表示ã•ã›ã‚‹ãƒ¡ãƒ¢

Google AJAX Search API KEY 㨠Google Map API KEY を指定ã—㦠JavaScript を読ã¿è¾¼ã‚€

<script src="http://www.google.com/uds/api?file=uds.js&v=1.0&key=Google AJAX Search API KEY" type="text/javascript"></script>
<script src="http://maps.google.com/maps?file=api&v=2.x&key=Google Map API KEY" type="text/javascript"></script>

実際ã®è¡¨ç¤ºéƒ¨åˆ†ã€‚ q=キーワードã§è¡¨ç¤ºã•ã›ã‚‹åœ°å›³ã®ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ï¼ˆã¾ãŸã¯ä½æ‰€ï¼‰ã‚’指定ã™ã‚‹ã€‚

<script type="text/javascript">
<!--
var gls;
var gMap;

function OnLocalSearch() {
    if (!gls.results) return;
    var first = gls.results[0];
    var point = new GLatLng(parseFloat(first.lat), parseFloat(first.lng));
    var zoom = 15;
    gMap.addControl(new GSmallMapControl());
    gMap.addControl(new GMapTypeControl());
    gMap.setMapType(G_MAP_TYPE);
    gMap.setCenter(point, zoom);
    var marker = new GMarker(point);
    gMap.addOverlay(marker);
    GEvent.addListener(marker, "click", function() {
        marker.openInfoWindowHtml(html);
    });
}

function load() {
    gMap = new GMap2(document.getElementById("map"));
    gMap.addControl(new GSmallMapControl());
    gMap.addControl(new GMapTypeControl());
    gMap.setCenter(new GLatLng(0, 0));
    gls = new GlocalSearch();
    gls.setCenterPoint(gMap);
    gls.setSearchCompleteCallback(null, OnLocalSearch);
    var q = "横浜ランドマークタワー";
    gls.execute(q);
}
//-->
</script>

<body onLoad="load()">
<div id="map" style="width: 410px; height: 320px"></div>
</body>

å„ API KEY ã®å–å¾—ã¯ä¸‹è¨˜ãƒšãƒ¼ã‚¸ã‹ã‚‰
Sign-up for an AJAX Search API Key – Google AJAX Search API – Google Code
Sign Up for the Google Maps API – Google Maps API – Google Code

CakePHP 環境ã«ã‚ˆã£ã¦ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’切り替ãˆã‚‹

CakePHP No Comments »

テストデータを入れるãªã©ãƒ†ã‚¹ãƒˆã¨ç’°å¢ƒã§ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚’切り替ãˆãŸã„ã¨ããŒã‚りã¾ã™ã€‚
CakePHP ã§ãれをやる方法ã§ã™ã€‚

モデル㮠$useDbConfig ã« app/config/database.php ã§å®šç¾©ã•れã¦ã„ã‚‹ $default ãŒãƒ‡ãƒ•ォルトã§ä½¿ç”¨ã•れã¾ã™ã€‚
database.php ã« $test ãªã©ä½¿ç”¨ã—ãŸã„データベースã®åˆ†ã ã‘定義を増やã—ã€
ãれをモデルã§
$this->useDbConfig = 'test';
ã®ã‚ˆã†ã«æŒ‡å®šã™ã‚Œã°ã„ã„ã ã‘ã§ã™ã€‚

app/app_model.php ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã§è¨­å®šã™ã‚‹ã®ãŒä¸€ç•ªç°¡å˜ã‹ã‚‚ã—れã¾ã›ã‚“。

CakePHP 環境ã«å¿œã˜ã¦DBã®è¨­å®šã‚’変ãˆã‚‹ | Shin x blog
ã§è‰²ã€…ãªæ–¹æ³•ãŒç´¹ä»‹ã•れã¦ã„ã¾ã™ã€‚

“CakePHPã§è¶…ç°¡å˜ã‚¹ã‚±ãƒ¼ãƒ©ãƒ“リティ” フォーラム – CakePHP Users in Japan
ã¾ãŸã€ã“ã® $useDbConfig を使用ã—ã¦

「マスターã¨ã‚¹ãƒ¬ãƒ¼ãƒ–ã®MYSQLサーãƒãŒã‚りã¾ã™ã€‚レプリケーション機能ã§ã€ãƒžã‚¹ã‚¿ãƒ¼ã‹ã‚‰ã‚¹ãƒ¬ãƒ¼ãƒ–ã«ãƒ‡ãƒ¼ã‚¿ãŒå¸¸ã«ã‚³ãƒ”ーã•れã¦ã„ã¾ã™ã€‚ãƒ‡ãƒ¼ã‚¿ã®æ›´æ–°ãƒ»è¿½åŠ ã¯ãƒžã‚¹ã‚¿ãƒ¼ã«å¯¾ã—ã¦è¡Œã„ã€ãƒ‡ãƒ¼ã‚¿ã®æ¤œç´¢ã¯ã‚¹ãƒ¬ãƒ¼ãƒ–ã§ã€ã¨ã„ã†å ´åˆã«ã¯ã©ã†ã™ã‚Œã°ã‚ˆã„ã§ã—ょã†ã‹ï¼Ÿã€

ã¨ã„ã†ã‚ˆã†ãªå ´åˆã®ã™ã”ãç°¡å˜ãªæ–¹æ³•ãŒç´¹ä»‹ã•れã¦ã„ã¾ã™ã€‚
モデル㮠beforeSave,afterSave,beforeDelete,afterDelete を使用ã—ã¦ãƒžã‚¹ã‚¿ãƒ¼ã¨ã‚¹ãƒ¬ãƒ¼ãƒ–を切り替ãˆã¦ã„ã¾ã™ã€‚

CakePHP MySQL ã§æ–‡å­—化ã‘を防ã設定

CakePHP, MySQL 3 Comments »

MySQL ã§æ–‡å­—化ã‘を防ããŸã‚ã«ã¯
SET NAMES utf8
ã®ã‚ˆã†ã« SET NAMES を実行ã™ã‚‹ã®ãŒæœ‰åйãªã®ã§ã™ãŒã€ã“れを app/config/database.php ã§è¨­å®šã™ã‚‹æ–¹æ³•ã§ã™ã€‚

'encoding'=>'文字コード'
をデータベースã®è¨­å®šé …ç›®ã«è¿½åŠ ã—ã¦ã‚„ã‚‹ã ã‘ã§ã™ã€‚

具体的ã«ã¯ app/config/database.php ãŒä¸‹è¨˜ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚

var $default = array(
    'driver' => 'mysql',
    'connect' => 'mysql_connect',
    'host' => 'localhost',
    'login' => 'user',
    'password' => 'password',
    'database' => 'dbname',
    'prefix' => '',
    'encoding' => 'utf8'
);


cake/libs/model/dbo/dbo_mysql.php
ã§ä¸‹è¨˜ã®ã‚ˆã†ã«å®Ÿè¡Œã•れã¦ã„ã¾ã™ã€‚

function connect() {
    (ç•¥)
    if (isset($config['encoding']) && !empty($config['encoding'])) {
        $this->setEncoding($config['encoding']);
    }

    return $this->connected;
}
function setEncoding($enc) {
    return $this->_execute('SET NAMES ' . $enc) != false;
}

CakePHP モデル㮠validation ã®æ‹¡å¼µã€€åŒã˜é …ç›®ã§é•ã†ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’出ã™

CakePHP No Comments »

CakePHP ã®ãƒ¢ãƒ‡ãƒ«ã® validation ã®æ‹¡å¼µã®ãƒ¡ãƒ¢ã®ç¶šãã§ã™ã€‚

åŒã˜ãƒ•ォームã®é …ç›®ã§é•ã†ã‚¨ãƒ©ãƒ¼ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’出ã—ãŸã„ã¨ããŒã‚りã¾ã™ã€‚
例ãˆã°ãƒ¦ãƒ¼ã‚¶ç™»éŒ²ãƒ•ォームã§ãƒ¦ãƒ¼ã‚¶ID ãŒãƒ•ォーマットエラーãªã®ã‹ã€æ—¢ã«ä½¿ç”¨ã•れã¦ã„ã‚‹ã®ã‹ãªã©ã§ã™ã€‚

models/users.php

var $validate = array(
        'loginid' => '/^[0-9a-zA-Z]{8}$/',
    );

function validates($data=array()) {
        if(empty($data)) {
            $data = $this->data;
        }

        parent::validates($data);

        // loginid ã®ãƒ¦ãƒ‹ãƒ¼ã‚¯ãƒã‚§ãƒƒã‚¯
        if ($this->findByLoginid($data["User"]["loginid"])) {
            $this->invalidate("loginid_unique");
        }

        if (count($this->validationErrors)>0) {
            return false;
        } else {
            return true;
        }
}

æ—¢ã«loginid ãŒç™»éŒ²æ¸ˆã¿ã®å ´åˆã¯
$this->invalidate('loginid_unique');
ã¨ã—ã¦ã„ã¾ã™ã€‚
invalidate ã«æŒ‡å®šã™ã‚‹ã®ã¯å®Ÿéš›ã«å­˜åœ¨ã—ãªã„ã‚‚ã®ã§ã‚‚大丈夫ãªã®ã§ãれを使用ã—㦠view ã§ã‚¨ãƒ©ãƒ¼ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’分ã‘ã¦è¡¨ç¤ºã—ã¾ã™ã€‚

views/users/regist.thtml

ID:< ?php echo $html->password('User/loginid'); ?>
< ?php echo $html->tagErrorMsg("User/loginid", "IDã¯è‹±æ•°å­—8文字ã§å…¥åŠ›ã—ã¦ãã ã•ã„"); ?>
< ?php echo $html->tagErrorMsg("User/loginid_unique", "IDã¯æ—¢ã«ä½¿ç”¨ã•れã¦ã„ã¾ã™ã€‚ä»–ã®ID を指定ã—ã¦ãã ã•ã„"); ?>

CakePHP モデル㮠validation ã®æ‹¡å¼µ

CakePHP No Comments »

CakePHP ã®ãƒ¢ãƒ‡ãƒ«ã® validation ã®æ‹¡å¼µã®ãƒ¡ãƒ¢ã§ã™ã€‚

ユーザ登録フォームãªã©ã§ãƒ‘スワードã®å†ç¢ºèªã®ãƒãƒªãƒ‡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’行ã†ã¨ãã®æ–¹æ³•ã§ã™ã€‚

views/users/regist.thtml

パスワード:< ?php echo $html->password('User/password'); ?>
確èªç”¨ãƒ‘スワード:< ?php echo $html->password('User/password2'); ?>
< ?php echo $html->tagErrorMsg('User/password2', 'パスワードãŒä¸€è‡´ã—ã¾ã›ã‚“');

※users テーブルã«password2 ã®ã‚«ãƒ©ãƒ ã¯ãªãã¦ã‹ã¾ã„ã¾ã›ã‚“。

models/users.php

function validates($data=array()) {
        if(empty($data)) {
            $data = $this->data;
        }

        parent::validates($data);

        if ($data["User"]["password"]!==$data["User"]["password2"]) {
            $this->invalidate("password2");
        }

        if (count($this->validationErrors)>0) {
            return false;
        } else {
            return true;
        }
}

AppModel クラス㮠validation メソッドも実行ã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã®ã§ã€å¿…ãš
parent::validates($data);
を書ã‹ãªã„ã¨ã„ã‘ã¾ã›ã‚“。

キムカツ

ãã®ä»– No Comments »


キムカツ

Originally uploaded by syuhari

æµæ¯”å¯¿ã§æ‰“ã¡åˆã‚ã›ã®å¾Œã€ä»¥å‰ã‹ã‚‰é£Ÿã¹ã¦ã¿ãŸã‹ã£ãŸã‚­ãƒ ã‚«ãƒ„ã§ãƒ©ãƒ³ãƒã—ã¾ã—ãŸã€‚カツãŒãŠã„ã—ã„ã®ã¯ã‚‚ã¡ã‚ã‚“ã§ã™ãŒã€ã”ã¯ã‚“やキャベツもã™ã”ããŠã„ã—ã‹ã£ãŸã§ã™ã€‚

CakePHP ログ出力

CakePHP No Comments »

CakePHP ã§ãƒ­ã‚°å‡ºåŠ›ã•ã›ã‚‹ãƒ¡ãƒ¢ã§ã™ã€‚

$this->log(ログã«å‡ºåŠ›ã™ã‚‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸, ログ種別);
出力ã™ã‚‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¯æ–‡å­—列ã§ã‚‚é…列ã§ã‚‚ã‹ã¾ã„ã¾ã›ã‚“。é…列ã®å ´åˆã¯ print_r ã•れãŸã‚‚ã®ãŒå‡ºåŠ›ã•れã¾ã™ã€‚
ログã®ç¨®åˆ¥ã¯ LOG_DEBUG ã§ debug.log 〠LOG_ERROR ã§ error.log ã«å‡ºåŠ›ã•れã¾ã™ã€‚デフォルト㯠LOG_ERROR ã§ã™ã€‚

ログファイル㯠LOGS ã§æŒ‡å®šã•れãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¸å‡ºåŠ›ã•れã¾ã™ã€‚
デフォルト㯠/app/tmp/logs ã§ã™ã€‚
ãŸã ã“ã®å®šæ•° LOGS 㯠cake/config/paths.php ã§æŒ‡å®šã•れã¦ã„ã‚‹ã®ã§ã€app/config/core.php ã§å®šç¾©ã•れã¦ã„る定数ã®ã‚ˆã†ã«æ°—軽ã«å¤‰æ›´ã—ãªã„æ–¹ãŒã„ã„ã‹ã‚‚ã—れã¾ã›ã‚“。

ログファイルãŒå­˜åœ¨ã—ãªã„å ´åˆã¯ãƒ•ァイルを作æˆã—ã¦ãれã¾ã™ã€‚

出力ã•れるログã¯ä¸‹è¨˜ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
2007-11-11 06:54:54 Error: メッセージ
LOG_DEBUG を指定ã™ã‚‹ã¨ãƒ­ã‚°ã® “Error” ã®éƒ¨åˆ†ãŒ “Debug” ã«ãªã‚Šã¾ã™ã€‚

ã“ã® log メソッド㯠Object クラスã«ã‚りã¾ã™ã€‚Object クラス㯠CakePHP ã®å…¨ã¦ã®ã‚¯ãƒ©ã‚¹ã§ç¶™æ‰¿ã•れるクラスãªã®ã§ã€ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ©ã€ãƒ¢ãƒ‡ãƒ«ã€ãƒ“ューã©ã“ã‹ã‚‰ã§ã‚‚ $this->log() ã§ãƒ­ã‚°ã«å‡ºåŠ›ã•ã›ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚

CakePHP findBy ã§ã®è¤‡æ•°æŒ‡å®šã‚’調ã¹ãŸãƒ¡ãƒ¢

CakePHP 2 Comments »

å…ˆã®ã‚¨ãƒ³ãƒˆãƒªã§æ›¸ã„ãŸã€ŒCakePHP findBy ã§è¤‡æ•°æ¡ä»¶ã®æŒ‡å®šã§ OR も指定å¯èƒ½ã€ã§ã™ãŒã€findByHogeAndFoo ãªã©ã®å‡¦ç†ãŒã©ã†ãªã£ã¦ã„ã‚‹ã‹æ°—ã«ãªã£ãŸã®ã§èª¿ã¹ãŸã¨ãã®ãƒ¡ãƒ¢ã§ã™ã€‚

  • findByHogeAndFoo メソッドãŒå®Ÿè¡Œã•れる㨠model_php5.php ( Model クラス ) ã® __call メソッドãŒå®Ÿè¡Œã•れる
  • __call メソッドã§ã¯ DboSource クラス㮠query メソッド㫠findByHogeAndFoo ã®ãƒ¡ã‚½ãƒƒãƒ‰åã¨æ¡ä»¶ã®å€¤ã‚’渡ã™
  • DboSource クラス㮠query メソッドã§ã¯ã€findBy ã¾ãŸã¯ã€findAllBy ã®å¾Œã‚ã®æ–‡å­—列をå–り出ã™
  • å–り出ã—ãŸæ–‡å­—åˆ—ã‚’å°æ–‡å­—ã«å¤‰æ›ã—ã¦ã•ら㫠AND ã‚’ _and_ã€OR ã‚’ _or_ ã«å¤‰æ›ã™ã‚‹
  • _or_ ã¾ãŸã¯ _and_ ã§åˆ†å‰²ã—ã¦ãƒ•ィールドをå–り出ã™
  • AND ã¾ãŸã¯ OR ã«ã—ãŸãŒã£ã¦ SQL ã®æ¡ä»¶ã‚’組ã¿ç«‹ã¦ã‚‹

ã¨ã„ã†ã‚ˆã†ãªã“ã¨å‡¦ç†ãŒã•れã¦ã„ã¾ã—ãŸã€‚
ã¾ã¨ã‚ã‚‹ã¨

  • 複数指定ã¯ã„ãã¤ã§ã‚‚å¯èƒ½
  • AND ã¾ãŸã¯ OR ã¯æ··åœ¨ã—ã¦æŒ‡å®šã¯ã§ããªã„

ã„ãã¤ã§ã‚‚指定ã¯ã§ãるよã†ã§ã™ãŒã€ãŸãã•ã‚“ã®æ¡ä»¶ã‚’ã“ã‚Œã§æŒ‡å®šã™ã‚‹ã¨ã‚½ãƒ¼ã‚¹ã®å¯èª­æ€§ãŒä¸‹ãŒã‚Šãã†ã§ã™ã—ã€AND 㨠OR ãŒæ··åœ¨ã§ããªã„ã®ã§æ™®é€šã¯ãã‚“ãªæŒ‡å®šã¯ã—ãªã„ã§ã—ょã†ã€‚
指定ã™ã‚‹å ´åˆã¯2ã¤ãらã„ã«ã¨ã©ã‚ã¦ãŠã„ã¦ã€ãれより多ããªã‚‹å ´åˆã¯ find ã® $conditions ã§æŒ‡å®šã—ãŸæ–¹ãŒç„¡é›£ã ã¨æ€ã„ã¾ã™ã€‚

CakePHP findBy ã§è¤‡æ•°æ¡ä»¶ã®æŒ‡å®šã§ OR も指定å¯èƒ½

CakePHP 1 Comment »

[cakephp]findByã§è¤‡æ•°æ¡ä»¶ã®æŒ‡å®š | blog.hereticsintheworld
ã§ç´¹ä»‹ã•れã¦ã„ãŸ
$this->Model->findByIdAndName( $id, $name )
ãŒæ°—ã«ãªã‚Šã‚½ãƒ¼ã‚¹ã‚’調ã¹ã¦ã¿ãŸã¨ã“ã‚ OR も指定å¯èƒ½ã§ã—ãŸã€‚
$this->Model->findByIdOrName( $id, $name )
ã¡ãªã¿ã« findAll ã§ã‚‚åŒæ§˜ã«æŒ‡å®šå¯èƒ½ã§ã™ã€‚

CakePHP 管ç†ç”»é¢ã‚’作æˆã™ã‚‹æ–¹æ³•

CakePHP 1 Comment »

CakePHP ã§ç®¡ç†ç”»é¢ã‚’作æˆã™ã‚‹æ–¹æ³•ã§ã™ã€‚
管ç†ç”»é¢ã‚‚ CakePHP ã§ã¯ç°¡å˜ã«ä½œæˆã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚

設定

/app/config/core.php ã®ä¸‹è¨˜ã®ã‚³ãƒ¡ãƒ³ãƒˆã‚¢ã‚¦ãƒˆã‚’ã¯ãšã—ã¾ã™ã€‚
define('CAKE_ADMIN', 'admin');
ã“れ㧠http://www.example.com/admin/controller/action ã¨ã„ㆠURL ã§ã‚¢ã‚¯ã‚»ã‚¹ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚
CAKE_ADMIN ã®å€¤ã‚’変更ã™ã‚Œã° URL ã® /admin/ ã®å€¤ãŒå¤‰ã‚りã¾ã™ã€‚

コントローラ

管ç†ç”»é¢ã§ä½¿ç”¨ã™ã‚‹ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ©ã«ç®¡ç†ç”»é¢ç”¨ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’追加ã—ã¾ã™ã€‚
管ç†ç”»é¢ç”¨ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³å㯠admin_index ã®ã‚ˆã†ã« admin_ ãŒä»˜ãã¾ã™ã€‚
ã“ã® ‘admin’ ã®éƒ¨åˆ†ã‚‚ CAKE_ADMIN ã«ã‚ˆã£ã¦å¤‰ã‚りã¾ã™ã€‚

ビュー

管ç†ç”»é¢ç”¨ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã§è¡¨ç¤ºã™ã‚‹ãƒ‡ãƒ•ォルトã®ãƒ“ューã¯ã‚¢ã‚¯ã‚·ãƒ§ãƒ³åã¨åŒã˜ã§ã™ã€‚admin_index.thtml ã®ã‚ˆã†ã« admin_ を付ã‘ã¾ã™ã€‚

レイアウト

ユーザサイドã®ç”»é¢ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã¨ç®¡ç†ç”»é¢ã¯ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆãŒé•ã†ã“ã¨ãŒå¤šã„ã‹ã¨æ€ã„ã¾ã™ã€‚管ç†ç”»é¢ç”¨ã®ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’ admin.thtml ã®ã‚ˆã†ã« views/layouts/ ã«ä½œæˆã—ã¾ã™ã€‚

管ç†ç”»é¢ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹æ™‚ã®å…±é€šå‡¦ç†

管ç†ç”»é¢ã®ã‚¢ã‚¯ã‚»ã‚¹æ™‚ã®å…±é€šå‡¦ç†ã¨ã—ã¦ã€ã‚¢ã‚¯ã‚»ã‚¹åˆ¶é™ã‚’ã—ãŸã‚Šã€ç”»é¢ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã®å¤‰æ›´ãªã©ãŒã‚りã¾ã™ã€‚
個別ã«ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã«è¿½åŠ ã—ã¦ã‚‚ã„ã„ã®ã§ã™ãŒæ¼ã‚Œãªã©ãŒã‚ã‚‹ã¨ã¾ãšã„ã®ã§ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ©ã® beforeFilter メソッドを使用ã™ã‚‹ã¨ã„ã„ã‹ã¨æ€ã„ã¾ã™ã€‚
管ç†ç”»é¢ã§ä½¿ç”¨ã™ã‚‹ã‚³ãƒ³ãƒˆãƒ­ãƒ¼ãƒ©å…¨ã¦ã«å…±é€šã—ã¦å‡¦ç†ã•ã›ã‚‹ãŸã‚ã«ã€ /app/app_controller.php ã® beforeFilter ã«å‡¦ç†ã‚’追加ã—ã¾ã™ã€‚
http://www.example.com/admin/contoller/action ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã¨
$this->params['admin'] = 'admin'
ãŒã‚»ãƒƒãƒˆã•れã¾ã™ã€‚管ç†è€…用URL ã‹ã©ã†ã‹ã«ã¯ã“れを使用ã—ã¾ã™ã€‚ã¾ãŸã€’admin’ ã®å€¤ã¯ CAKE_ADMIN ã§æŒ‡å®šã—ãŸå€¤ã«ãªã‚Šã¾ã™ã€‚ãŸã¨ãˆã° CAKE_ADMIN ã‚’ hoge ã«ã™ã‚‹ã¨
$this->params['hoge'] = 'hoge'
ã«ãªã‚Šã¾ã™ã€‚

if (defined('CAKE_ADMIN') && !empty($this->params[CAKE_ADMIN])) {
    // 管ç†è€…用ã®ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’指定
    $this->layout = "admin";
    // 管ç†è€…用ログインãƒã‚§ãƒƒã‚¯ãªã©ã‚’行ã†
}
WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS ログイン