DjangoでCRUDを作る手順を示します。 CRUDとは(Create, Read, Update, Delete)の頭文字をとったものです。 1.プロジェクト・アプリケーションの作成 $ django-admin.py startproject test_project $ cd test_project $ python manage.py startapp linktracker サーバの…
(続きを読む...)タグ: symfony
動的にトップページURLを取得する関数(symfony)[getUriPrefix/getRelativeUrlRoot]
■コード例 ・テンプレートで使用する場合 $topUrl = $sf_request->getUriPrefix() . $sf_request->getRelativeUrlRoot(); ・テンプレート以外で使用する場合 $topUrl = sfContext::getInstance()->getRequest()->getUriPrefix() . sfContex…
(続きを読む...)ERROR 1044 (42000) connect failed…Access denied for userの対処法 symfony
以下のようなエラーがでてsymfonyがうまく作動しないときの解決法です。 ■エラー文 ERROR 1044 (42000): Access denied for user ‘dbuser’@'%’ to database ‘dbname’ ■原因 database.ymlで名前を指定したデータベースがない ■解決方法 以下のコマンドからデータベースを作成する。 コンソールでmysqladmin …
(続きを読む...)MySQLで使ってはいけないワード一覧
MySQLにはカラム名やテーブル名に使ってはいけないワードがあります。これを予約語と呼びますが、構文の間違いより断然ハマりやすいので気をつけましょう。個人的なハマりやすさで言えば1位.GROUP、2位.FIELDS、3位.UPDATEでしょうか。 全部覚えるのは大変なので、ハマりやすい予約語だけでも覚えておきましょう。 ■ひっかかりやすいワード25選BEFORE CASE CHECK CONVER…
(続きを読む...)Undefined offset: -1の解決方法 symfony
以下のようなエラーがでてsymfonyがうまく作動しないときの解決法です。 Notice: Undefined offset: -1 in /usr/share/pear/symfony/addon/sfPager.class.php on line 89 PHP Strict Standards: Creating default object from empty value in /usr…
(続きを読む...)Allowed memory size of ~ bytes exhaustedの対処法 symfony
以下のようなエラーが発生しsymfonyがうまく作動しないときの解決法です。 ■エラー文 Fatal error: Allowed memory size of 12582912 bytes exhausted (tried to allocate 1560202 bytes) in /usr/share/pear/symfony/view/sfPHPView.class.php on line …
(続きを読む...)現在のモジュール名やアクション名を取得するsymfony構文
現在のモジュール名を取得するsymfony構文 $module_name = sfContext::getInstance()->getModuleName(); ※templatesで使用する場合 $module_name = $sf_context->getModuleName(); $module_name = $sf_params->get(‘module’); (例) …
(続きを読む...)Unable to open the log fileの解決法 syfmony
以下のようなエラーがでてPHPがうまく作動しないときの解決法です。 Unable to open the log file “/var/www/html/{project}/log/frontend_dev.log” for writing ■解決方法 symfonyプロジェクトをフォルダごとコピペしたり移動したりした時に自動的にパーミッションが変更されることが原因の場合が多いようです。以下のコマ…
(続きを読む...)「ERROR 1045 connect failed…Access denied for user(using password: YES)」の対処法(symfony)
以下のようなエラーがでてsymfonyがうまく作動しないときの解決法です。 ■エラー文 [wrapped: connect failed [Native Error: Access denied for user 'dbuser'@'localhost' (using password: YES)] [User Info: Array]] または ERROR 1045 (28000): Acces…
(続きを読む...)Windows上にxamppを立ててsymfonyをインストールする方法
Windows上にxamppを立ててsymfonyをインストールする方法 ■xamppをインストールする。 1.http://www.apachefriends.org/jp/xampp-windows.html へ飛び、XAMPPWindows版 1.6.3a〔ベーシックパッケージ〕のインストーラをダウンロード。 落としたインストーラーを実行し、次へを押していく。 ただし、保存先はデフォルトでC…
(続きを読む...)PHPで「Fatal error: Class ‘DomDocument’ not found…」とエラーが出るときの対処法
エラー文 Fatal error: Class ‘DomDocument’ not found in /usr/share/pear/symfony/util/sfFillInForm.class.php on line 50 解決方法 PHPのconfigure時に–with-domでコンパイルされていない場合のエラーです。 モジュールとして後からインストールするときは以下のコマンドを用います。…
(続きを読む...)symfonyで2ch作成 番外編3 preg_replace()による自動リンク
文字列の中にhttp://~やhttps://~などのURLが存在したとき、それらの文字列に自動的にリンクを張る方法を解説します。今回使う関数は、正規表現関数preg_replace()です。 正規表現に関しては以下を参照 サルにもわかる正規表現入門 正規表現メモ preg_replace()は一般的に次のように使います。 preg_replace( パターン文字列、置換文字列、対照文字列 ) コ…
(続きを読む...)TinyMCEの細かな設定の方法
1. 日本語化 TinyMCE公式サイト(英語) 上記のサイトから日本語のLanguage Packageをダウンロードしてくる. ダウンロードしたLanguage Packeageを解凍しweb/js/tiny_mceに入れる. 日本語化させたいテキストエリアに以下のように書く. textarea_tag(‘name’, ‘default’, ‘rich=true tinymce_options…
(続きを読む...)symfonyからセッションに配列や文字列を格納する方法
説明 sfUserクラスのsetAttributeを使ってセッションに値を格納し、getAttributeで呼び出します。ユーザーがログアウトするまで(セッションが切れるまで)、後から何回でも呼び出せます。 内部的にはsfContextのinitializeでregister_shutdown_function関数が呼ばれ、終了のタイミングでsfContext::shutdownが呼ばれ、その中で…
(続きを読む...)symfony-1.0で「application “frontend” does not exist」の対処法
エラー文 $ symfony init-module frontend xxxx または $ symfony propel-generate-crud frontend xxxx Xxxx と打った時に [Exception] application “frontend” does not exist と出る。 原因 指定したアプリケーションが存在していない。もしくは、指定しているアプリケーション…
(続きを読む...)HTTPヘッダーに値をセットするsymfony構文のまとめ
以下は sf_root_dir/apps/myapp/modules/mymodule/action/actions.class.php に書く場合の構文。 // コンテントタイプを指定 $this->getResponse()->setContentType(‘text/xml’); // HTTPヘッダーを指定 $this->getResponse()->setHttp…
(続きを読む...)「Uncaught exception ‘sfException’ with message ‘Unable to find path for class」の対処法 symfony
■エラー文 Fatal error: Uncaught exception ‘sfException’ with message ‘Unable to find path for class “questionPeer”.’ in /usr/share/pear/symfony/addon/propel/sfPropelData.class.php:190 ■原因 test_data.ymlに間違…
(続きを読む...)symfony1.0でMySQLからランダムにレコードを取得する方法、パフォーマンスについて
方法1 簡単なのは以下の方法です。 この方法だと、テーブルのカラム数やレコード数が多い場合に著しくパフォーマンスが低下します。 コード 1件取得する場合 $c = new Criteria(); $c->addDescendingOrderByColumn(‘RAND()’); $c->setLimit(1); $random_record = MyTablePeer::doSelec…
(続きを読む...)Cannot redeclare classの解決法 (symfony)
以下のようなエラーがでてsymfonyがうまく作動しないときの解決法です。 ■エラー文 Fatal error: Cannot redeclare class base{model}peer in /var/www/html/{project}/lib/model/om/Base{model}Peer.php on line 4 または PHP Fatal error: Cannot redefi…
(続きを読む...)Symfonyで複数のDBに接続するための設定箇所一覧
1. databases.ymlの書き方 config/databases.yml all: propel_db1: class: sfPropelDatabase param: dsn: mysql://{DB1ログインID}:{DB1ログインID}@localhost///{DB1データベース名} propel_db2: class: sfpropelDatabase param: dsn: …
(続きを読む...)symfony mysql phpmyadminの文字化け
symfony mysql phpmyadminを使ってるんですが、symfonyで登録したデータがmysqlやphpmyadminで文字化けして困っていました。 ■原因 mysqlの設定はutf8ですが、phpがlaten1で接続するために文字化けが起こる。 ■解決方法 mysqlの設定ファイルを以下のように変更する。 skip-character-set-client-handshake が重…
(続きを読む...)Windows上のEclipseでsymfonyをデバッグする方法
準備 1. XAMPPをインストール 2. XAMPPにsymfonyをインストール 3. Eclipseをインストール (Zend Debuggerが入っているall-in-oneを入れると楽) Eclipseでsymfonyをデバッグ 1. Eclipseを起動する 2. xamppを起動しApacheとMySQLを起動する 3. C:\xampp\htdocs以下にsymfonyプロジェクト…
(続きを読む...)「Could not execute query…Table doesn’t exist」の対処法 symfony
■エラー文 [SQLException] Could not execute query [Native Error: Table 'xxxx.yyyy' doesn't exist] [User Info: SELECT * FROM xxxx] ■原因 schema.ymlからいらないテーブルを削除してmodelをリビルドしても元からあったmodelは削除されないため、エラーが出る場合がある …
(続きを読む...)Mercurialで無視するファイルや拡張子を指定できる.hgignoreファイルの書き方(symfonyプロジェクト対応版)
■手順 hgプロジェクトディクレクトリに.hgignoreというファイル名で以下のような内容のファイルを作成する .hgignore syntax:regexp /\. DS_Store ^cache/ ^log/ ■説明 syntax:regexp ・・・ 正規表現を指定 /\. ・・・ .hgや.svn等を外す DS_Store ・・・ Macの隠しファイルを外す ^cache/ ・…
(続きを読む...)