タグ

2010年6月25日のブックマーク (18件)

  • 3.4. CakePHP運用環境 のセットアップ

  • CakePHP Model#save()のSELECT文を抑制する

    Model#save()でUPDATE文が発行される際は、まず該当ID(primary key)がDBに存在するかを確認するSELECT文が発行されて、存在すればUPDATE文が発行されます。 1レコードだけを更新するなら特に気にする必要は無いのですが、大量のレコードを逐次UPDATEする際はこのSELECT文を抑制したくなります。 そこでこのSELECT文を抑制する方法を調べてみました。 1. Model#$__exitstsにtrueを入れる ちょっと強引な方法ですが、save()を実行する直前でModel#$__exitstsにtrueを入れると、SELECT文が発行されません。 Model#$__exitstsはsave()実行後、nullにリセットされるので元の値を戻す必要はありません。 // FooがModel $this->Foo->__exists = true; $thi

  • NaGoring.com is for sale | HugeDomains

    mikage014
    mikage014 2010/06/25
    はまりどころいろいろ
  • cakephpのmodel::save()ではまった問題 - 雑食SEの日記

    このタイトルだと、たいていmodel::create()してるか、してないかで、model::save()時に実行されるSQLがINSERTかUPDATEに分岐する問題なんですが、今回、はまった問題は、この問題ではありません。 処理の流れ的には、 model::set($data); model::save(); といたって、(cakephp的に)普通にレコードの更新を行うもので、 問題はUPDATEして欲しいのに、INSTERTしてしまうというもの。 で、メッセージで、プライマリーキーに設定してるフィールド(id)の値が衝突するためINSERTが失敗しましたとか、表示される。 ん〜、そもそもUPDATEして欲しいのに、INSERTしてるのが、わからない。 実行されたSQLを見てみると、確かにUPDATEではなく、INSERTしてしまってました。 で、さくっと原因を言うと、idの値に0を使

    cakephpのmodel::save()ではまった問題 - 雑食SEの日記
  • dfltweb1.onamae.com – このドメインはお名前.comで取得されています。

    このドメインは お名前.com から取得されました。 お名前.com は GMOインターネットグループ(株) が運営する国内シェアNo.1のドメイン登録サービスです。 ※表示価格は、全て税込です。 ※サービス品質維持のため、一時的に対象となる料金へ一定割合の「サービス維持調整費」を加算させていただきます。 ※1 「国内シェア」は、ICANN(インターネットのドメイン名などの資源を管理する非営利団体)の公表数値をもとに集計。gTLDが集計の対象。 日のドメイン登録業者(レジストラ)(「ICANNがレジストラとして認定した企業」一覧(InterNIC提供)内に「Japan」の記載があるもの)を対象。 レジストラ「GMO Internet Group, Inc. d/b/a Onamae.com」のシェア値を集計。 2023年5月時点の調査。

  • T字形ER図の基礎知識

    知識1 リソースとイベントの分け方 イベントとリソースを分けているのは「〜する」という言葉を付けて成り立つかどうかです。 つまり「受注+する」は言葉として成り立つのでイベント。しかし「商品+する」は成り立たないのでリソース。 他には、「イベントには年月日などのタイムスタンプが含まれるが、リソースには含まれない」という見方で切り分けても良いです。 これによって細分化されたリソースは、リソースの中にリソースが含まれることはなく、独立した存在となります。 リソースとリソースとの関係表現には、必ず「対照表」というものが使われます。 つまり[従業員]というリソースに、[所属部門]というリソースが含まれることはなく、[従業員:部門 対照表]によって「配属」が表現され、組織構造が変わった場合や人事異動の場合にも、この対照表だけをメンテナンスすることで、[従業員][部門]ともに安定した(Sta

    mikage014
    mikage014 2010/06/25
    T字形ER図の読み方
  • 複合キーの必要性はなし? - ronSpace

    先ごろ開かれたRailsConfでは、オープニングキーノートにおいてPragDaveが「Railsでは解決できない事項」に焦点をあてていた。その中にはエンタープライジーなことも含まれていた。たとえば、複合キーを持つような、様々なデータ構造を扱うことが必要だというのだ。 これに対するDHHの反応は、この上なく痛烈な拒絶であった。 Martin Fowler's Bliki in Japanese - エンタープライズRails ここでいう「複合キー」が何を指すのか、はっきりとは書いてありませんが。リレーショナル・データベースのテーブルが持つ、「複数列で構成される主キー」ということにして、複合キーの必要性について、考えてみます。 まず、複合キーが「必要とされる」状況を、3点挙げてみます。 --- 1) 階層構造を表現したい これはすぐに否定できますね。 単一の主キーと外部キーの関連を使って、階

    複合キーの必要性はなし? - ronSpace
  • Martin Fowler's Bliki in Japanese - エンタープライズRails

    http://www.martinfowler.com/bliki/EnterpriseRails.html Railsのコミュニティでは「エンタープライズ」という言葉がダーティーワードになりつつある。 多くの人にとってRailsフレームワークとは、貪欲にシンプルさを備えたものであり、複雑になり過ぎた「エンタープライジー」なフレームワークへのアンチテーゼなのだ。 先ごろ開かれたRailsConfでは、オープニングキーノートにおいてPragDaveが「Railsでは解決できない事項」に焦点をあてていた。 その中にはエンタープライジーなことも含まれていた。 たとえば、複合キーを持つような、様々なデータ構造を扱うことが必要だというのだ。 これに対するDHHの反応は、この上なく痛烈な拒絶であった。Wired誌*1の表紙になった画像をうまく編集して、DHHは自らをソフトウェア界のネオ(救世主)として

  • ID or not ID - A.R.N [日記]

    おぉ、ガチだ。 [RDBMS]複合主キー? 18:57 ・・・まだそんなこと言ってる人いるのか。 id等の単一のサロゲートキーを導入して逃げることも可能ではあるが、そのために仕組みが複雑になることが避けられない。 いや、お互いものすごく優秀で有名な方だし大人なのでガチの勝負はしてくれないとは思うのだけれど、ぜひ世の多くのさまよえるSEのためにガチンコ勝負して決着つけてくれんかなぁ。てゆうか、今回の案件でもID派(=私)と複合主キー派(=モデラー)でもろに喧嘩してるし、前のプロジェクトでも他の人が同じようなことやってたし、さらに前の案件でも(w そろそろ、IDを使うべきかそうでないかくらいベストプラクティスを決めてほしいなぁと思う今日この頃*1。 たしかにDB直接見て何かするような運用だと、複合主キーの方がわかりやすかったりするのはたしか。でも複雑なシステムで他のテーブルへの関連が沢山あるよ

    ID or not ID - A.R.N [日記]
  • まとめよう、あつまろう - Togetter

    コミュニケーションが生まれるツイートまとめツール

    まとめよう、あつまろう - Togetter
    mikage014
    mikage014 2010/06/25
    インターネットは自由すぎますね。インターネットの作者はいつ逮捕されてもおかしくない。
  • TechCrunch | Startup and Technology News

    Elon Musk’s AI startup, xAI, has raised $6 billion in a new funding round, it said today, in one of the largest deals in the red-hot nascent space, as he…

    TechCrunch | Startup and Technology News
  • PHPUnit 3.4 Japanese Manual

    Welcome to PHPUnit! PHPUnit is a programmer-oriented testing framework for PHP. It is an instance of the xUnit architecture for unit testing frameworks.

    PHPUnit 3.4 Japanese Manual
  • PHPUnit ポケットガイド

    Sebastian Bergmann が公開している PHPUnit Pocket Guide の日語訳です。 2006/08/09 追記: 家 のほうでも日語版が見られるようになりました。 m-takagi.org は非常に貧弱な回線で運用しており、 頻繁に落ちています :-( ので、ここがつながりにくい場合は家のほうを参照ください。 PHPUnit 3.3 日語 English PHPUnit 3.2 日語 English PHPUnit 3.1 日語 English PHPUnit 3.0 日語 English PHPUnit 2.3 日語 English Deutsch

  • モデルの指定列からselectタグを作るのに便利な方法 - Writing Some Code

    1.1系ではModel::generateList()メソッドを使えば、モデルから指定した列のkeyとvalueがペアとなった配列が取得でき、selectタグを作るのに便利でした。 1.2系ではそのgenerateList()は非推奨メソッドとなり、 「1.2系ではgenerateList()の代わりにModel::find('list')を使う」 という情報は色々なところで見つかったのですが、keyとvalueに使われる列を自分で指定する方法が分からなかったので調べてみました。 今回分かったのは2通りのやり方です。(Beta 1.2.0.6311で確認) 方法1:displayFieldプロパティを設定して、Model::find('list')を呼ぶ方法 こちらの方法はkeyに使われる列はモデルの主キー(通常であれば'id')固定になります。 モデルのdisplayFieldプロパティ

    モデルの指定列からselectタグを作るのに便利な方法 - Writing Some Code
    mikage014
    mikage014 2010/06/25
    KeyValueペアを作るのにSet::Combineが便利
  • RESTなWebサービスをPHPで操作する

    はてなブックマークのAtomAPIの概要と、アクセスに必要な環境 今回は、「RESTなWebサービスの利用/開発」の第3回として、より格的にWebサービスにアクセスする例を紹介します。RESTなWebサービスの1つとして、はてなブックマークの「AtomAPI」を例に取り上げ、Web開発用の簡易スクリプト言語であるPHPPHP:Hypertext Preprocessor)を使ってブックマークの追加/編集/削除を行う方法を解説します。 AtomAPIは、ブログなどのWeb上の情報を、Webアクセスに用いられるHTTP(Hypertext Transfer Protocol)を通して編集するためのプロトコルです。AtomAPIは通称で、正式には「The Atom Publising Protocol」(略称はAtomPub)と呼びます。 AtomAPIでは、一般にはRESTの形式で通信を行

    mikage014
    mikage014 2010/06/25
    はてなブックマークのAtomAPIとWSSE認証
  • CakePHP - Build fast, grow solid | PHPフレームワーク

    New CakePHP 5.0 Chiffon. Faster. Simple. Delicious. What's new in version The migration guide has a complete list of what's new in. We recommend you give that page a read when upgrading. A few highlights from 5.0 are: PHP 8.1 required. Improved typehints across the framework. CakePHP now leverages union types to formalize the types of many parameters across the framework. Upgraded to PHPUnit 10.x

    CakePHP - Build fast, grow solid | PHPフレームワーク
    mikage014
    mikage014 2010/06/25
    「「暗黙の了解」のようになっている実用的なルールをまとめてみたいと思います」
  • この先生きのこるには

    タイトルながくなってしまった。 CakePHP勉強会に参加するので俺だってCakePHPくらい使えるんだぜー!という所を。 はじめに 私が動かしてるブログシステムをCakePHPで書き直すとしたらどうするのかな。という事をやっていきます。 CakePHPって独自ルールが多いから新規開発は早くても既存システムにい込むのは難しいんじゃないの?みたいな疑問を払拭していきたい。 インストールと設定 donate,donateってうるせー! 今回は1.2.0.7125-rc1を使いました。新しいのか古いのかしらない。 http://cakeforge.org/frs/download.php/626/cake_1.2.0.7125-rc1.tar.gz/donation=complete ダウンロードして解答します。そしたら chmod -R 777 app/tmp してtmpディレクトリに書き込

    この先生きのこるには
    mikage014
    mikage014 2010/06/25
    既存のブログシステムからCakePHPへの移行例
  • Twitter、分散フレームワーク「Gizzard」を公開 | gihyo.jp

    2010年4月6日、Twitterは独自に開発した分散フレームワーク「Gizzard」をGitHubにオープンソースとして公開しました。Gizzardは「シャーディング」と呼ばれる、1台に格納するとパフォーマンスに影響を及ぼす大容量なデータベースを複数台に分割することで解決を図る手法をサポートするフレームワークです(図1⁠)⁠。TwitterのバックエンドにScalaが使われていることが以前話題となりましたが、このGizzardもScalaで書かれています。 図1 Gizzardのシステム構成モデル 出典:http://github.com/twitter/gizzard Gizzardはミドルウェアとして動作し、RailsPHPなどで動くWebフロントエンドからのリクエストを受け取り、My-SQLやRedisのようなインメモリDB、Luceneなど各種データストアへ渡します。Twitt

    Twitter、分散フレームワーク「Gizzard」を公開 | gihyo.jp