<?xml version="1.0" encoding="UTF-8" ?><rdf:RDF 
  xmlns="http://purl.org/rss/1.0/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xml:lang="ja">
  <channel rdf:about="http://w.atwiki.jp/kiminori_hirose/">
    <title>MemoMemo</title>
    <link>http://w.atwiki.jp/kiminori_hirose/</link>
    <atom:link href="https://w.atwiki.jp/kiminori_hirose/rss10.xml" rel="self" type="application/rss+xml" />
    <atom:link rel="hub" href="https://pubsubhubbub.appspot.com" />
    <description>MemoMemo</description>

    <dc:language>ja</dc:language>
    <dc:date>2007-08-24T00:04:43+09:00</dc:date>
    <utime>1187881483</utime>

    <items>
      <rdf:Seq>
                <rdf:li rdf:resource="https://w.atwiki.jp/kiminori_hirose/pages/19.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kiminori_hirose/pages/18.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kiminori_hirose/pages/17.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kiminori_hirose/pages/16.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kiminori_hirose/pages/15.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kiminori_hirose/pages/14.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kiminori_hirose/pages/13.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kiminori_hirose/pages/11.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kiminori_hirose/pages/10.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kiminori_hirose/pages/9.html" />
              </rdf:Seq>
    </items>
	
		
    
  </channel>
    <item rdf:about="https://w.atwiki.jp/kiminori_hirose/pages/19.html">
    <title>- Logger</title>
    <link>https://w.atwiki.jp/kiminori_hirose/pages/19.html</link>
    <description>
      *Logger on Rails
**ログを記録する。
&gt;logger.debug &#039;DEBUG TEXT&#039;
&gt;logger.info &#039;INFORMATION TEXT&#039;
&gt;logger.warn &#039;WARNING TEXT&#039;
&gt;logger.error &#039;ERROR TEXT&#039;
&gt;logger.fatal &#039;FATAL ERROR TEXT&#039;
**ログにヘッダとフッタを付ける。
&gt;logger.around_info &#039;HEADER TEXT&#039;, &#039;FOOTER TEXT&#039; do
&gt;&amp;nbsp;&amp;nbsp;logger.info &#039;TEST TEXT&#039;
&gt;end
**出力するログレベルを設定する
config/environment.rb、config/environments/*.rbを編集する
&gt;config.log_level = :error    </description>
    <dc:date>2007-08-24T00:04:43+09:00</dc:date>
    <utime>1187881483</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kiminori_hirose/pages/18.html">
    <title>Validate on ActiveRecord</title>
    <link>https://w.atwiki.jp/kiminori_hirose/pages/18.html</link>
    <description>
      *一覧

|validates_acceptance_of|同意|:on, :message, :if, :accept|
|validates_associated|関連|:on, :message, :if|
|validates_confirmation_of|確認|:on, :message, :if|
|validates_each|要素|:on, :if, :allow_nil|
|validates_exclusion_of|範囲外|:on, :message, :if, :in(必須), :allow_nil|
|validates_format_of|正規表現|:on, :message, :if, :with(必須)|
|validates_inclusion_of|範囲|:on, :message, :if, :in(必須), :allow_nil|
|validates_length_of|長さ|:on, :message, :if, :minimun, :maximun, :within, :in, :allow_nil, :wrong_length, :too_long, :too_short|
|validates_numericality_of|数値|:on, :message, :if, :allow_nil, :only_integer|
|validates_presence_of|存在|:on, :message, :if|
|validates_uniquness_of|一意性|:on, :message, :if, :scope, :case_sensitive|
*validates_acceptance_of

&gt;class Entry &lt; ActiveRecord::Base
&gt;&amp;nbsp;&amp;nbsp;validates_acceptance_of :accepted, :accept=&gt;&#039;ok&#039;
&gt;end    </description>
    <dc:date>2007-08-20T23:12:18+09:00</dc:date>
    <utime>1187619138</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kiminori_hirose/pages/17.html">
    <title>ActiveRecord on Rails</title>
    <link>https://w.atwiki.jp/kiminori_hirose/pages/17.html</link>
    <description>
      *検索(SELECT)
**SELECT * FROM people;
peopleにはPersonオブジェクが格納された配列で返される。
&gt;people = Person.find :all
**SELECT * FROM people LIMIT 1;
&gt;person = Person.find :first
**SELECT * FROM people WHERE id = 1;
&gt;people = Person.find :all, :conditions=&gt;[&quot;id=?&quot;,1]

&gt;people = Person.find :all, :conditions=&gt;[&quot;id=:id&quot;,{:id=&gt;1}]
**SELECT * FROM people ORDER BY id DESC;
&gt;people = Person.find :all, :order=&gt;&quot;id DESC&quot;
**SELECT * FROM people LIMIT 10;
&gt;people = Person.find :all, :limit=&gt;10
**SELECT name AS shimei FROM people;
&gt;people = Person.find :all, :select=&gt;&quot;name AS shimei&quot;
**SELECT company_id, count(*) AS cnt FROM people GROUP BY company_id;
&gt;people = Person.find :all :select=&gt;&quot;id, count(*) AS cnt&quot;, :group=&gt;&quot;company_id&quot;
**SELECT * FROM people LEFT OUTER JOIN companies ON people.company_id=companies.id;
&gt;people = Person.find :all :joins=&gt;&quot;LEFT OUTER JOIN companies ON people.comapny_id=companies.id&quot;
1対1、1対多、多対多の関係設定をしている場合
&gt;people = Preson.find :all :include=&gt;:company
**直接SQLを入力
&gt;Perso    </description>
    <dc:date>2007-08-20T22:31:20+09:00</dc:date>
    <utime>1187616680</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kiminori_hirose/pages/16.html">
    <title>Rails</title>
    <link>https://w.atwiki.jp/kiminori_hirose/pages/16.html</link>
    <description>
      *Rails 1.2.3 のメモ
**作成手順
***プロジェクトの作成
projectプロジェクトを作成する。
&gt;$ rails project
***データベースの設定
config/database.ymlを[[MySQL]]用に編集する。(testとproductionもdevelopmentと同様に変更しておく。)
&gt;development:
&gt;&amp;nbsp;&amp;nbsp;adapter: mysql
&gt;&amp;nbsp;&amp;nbsp;database: project_development
&gt;&amp;nbsp;&amp;nbsp;username: {MySQLのユーザ名}
&gt;&amp;nbsp;&amp;nbsp;password: {パスワード}
&gt;&amp;nbsp;&amp;nbsp;socket: /var/lib/mysql/mysql.sock&amp;nbsp;&amp;nbsp;#ソケットのとき
&gt;&amp;nbsp;&amp;nbsp;host: localhost&amp;nbsp;&amp;nbsp;#TCP/IPのときのMySQLのホスト名
&gt;&amp;nbsp;&amp;nbsp;port: 3306&amp;nbsp;&amp;nbsp;#TCP/IPのときのMySQLのポート番号。指定してないときは、3306になる
&gt;&amp;nbsp;&amp;nbsp;encoding: utf8&amp;nbsp;&amp;nbsp;#文字化け防止のためデータベースの文字コードを設定する。
***文字コード(UTF-8)の指定
app/controllers/application.brにHTTPレスポンスで返すContent-Typeを追加する。
&gt;class ApplicationController &lt; ActionController::Base
&gt;&amp;nbsp;&amp;nbsp;after_filter :set_charset
&gt;protected
&gt;&amp;nbsp;&amp;nbsp;def set_charset
&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;headers[&quot;Content-Type&quot;] = &#039;text/html; charset=UTF-8&#039;
&gt;&amp;nbsp;&amp;nbsp;end
&gt;end
config/environment.rbにRailsの内部文字コードを追加する。
&gt;$KCODE = &#039;UTF8&#039;
**Tips
***    </description>
    <dc:date>2007-08-24T00:14:24+09:00</dc:date>
    <utime>1187882064</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kiminori_hirose/pages/15.html">
    <title>MySQL</title>
    <link>https://w.atwiki.jp/kiminori_hirose/pages/15.html</link>
    <description>
      **データベース作成
&gt;CREATE DATABASE {データベース名} [CHARACTER SET {文字コード名}];
**データベース削除
&gt;DROP DATABASE {データベース名};
**ユーザ作成
&gt;GRANT ALL PRIVILEGES ON *.* TO &#039;{ユーザ名}&#039;@&#039;%&#039; IDENTIFIED BY &#039;{パスワード}&#039; WITH GRANT OPTION;
**データベース変更
&gt;USE {データベース名};
**テーブル名を変更
&gt;ALTER TABLE {旧テーブル名} RENAME TO {新テーブル名};    </description>
    <dc:date>2007-08-10T11:45:45+09:00</dc:date>
    <utime>1186713945</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kiminori_hirose/pages/14.html">
    <title>Vi</title>
    <link>https://w.atwiki.jp/kiminori_hirose/pages/14.html</link>
    <description>
      ** ヤンクしたデータをコマンドラインに貼り付ける
[C-r][&quot;]
** やり直し（Undo）
[u]
** やり直しのやり直し
[C-r]
** 強制的にタブを挿入する
[C-v][C-i]
** 字下げする（インサートモード）
[C-d]
** 対応するカッコへ移動する
[%]
** 矩形選択
[v]       -&gt; 矩形選択を開始
[v][i][b] -&gt; ()で囲まれたブロックの内部
[v][a][b] -&gt; ()で囲まれたブロック
[v][i][B] -&gt; {}で囲まれたブロックの内部
[v][a][B] -&gt; {}で囲まれたブロック
** キーワード補完（インサートモード）
[C-p] -&gt; 前方のキーワードから補完
[C-n] -&gt; 後方のキーワードから補完
** 体裁を整える
[g][g][=][G]    </description>
    <dc:date>2006-02-13T19:29:38+09:00</dc:date>
    <utime>1139826578</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kiminori_hirose/pages/13.html">
    <title>Struts</title>
    <link>https://w.atwiki.jp/kiminori_hirose/pages/13.html</link>
    <description>
      *Struts 1.1

**文字化けを起こさないように設定したい。
文字化けを起こさないようにするためには次のことに気をつける必要がある。
-HTML,JSPファイルを保存する時に文字コードを指定する。
-JSPファイルの先頭行に以下を追加する。
&gt;例：&lt;%@ page contentType=&quot;text/html; charset=utf-8&quot; %&gt;
-HTMLの&lt;head&gt;タグ内に以下を追加する。
&gt;例：&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot;/&gt;
-StrutsのFilterを作成する。
&gt;例：public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;request.setCharacterEncoding(&quot;utf-8&quot;);
&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chain.doFilter(request,response);
&gt;}
-web.xmlを編集する。
&gt;&lt;filter&gt;
&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;filter-name&gt;request_filter&lt;/filter-name&gt;
&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;filter-class&gt;struts.RequestFilter&lt;/filter-class&gt;
&gt;&lt;/filter&gt;
&gt;&lt;filter-mapping&gt;
&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;filter-name&gt;request_filter&lt;/filter-name&gt;
&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;url-pattern&gt;/*&lt;/url-pattern&gt;
&gt;&lt;/filter-mapping&gt;    </description>
    <dc:date>2005-11-07T17:28:49+09:00</dc:date>
    <utime>1131352129</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kiminori_hirose/pages/11.html">
    <title>Top</title>
    <link>https://w.atwiki.jp/kiminori_hirose/pages/11.html</link>
    <description>
      **MemoMemoへようこそ
-このページは個人的なメモページです。
-このページに書かれた内容にはいっさい責任を持ちません。    </description>
    <dc:date>2005-05-06T21:18:54+09:00</dc:date>
    <utime>1115381934</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kiminori_hirose/pages/10.html">
    <title>Bison</title>
    <link>https://w.atwiki.jp/kiminori_hirose/pages/10.html</link>
    <description>
      *Bison 2.0

**アクション内で強制的にエラーを発生させたい。
YYERRORマクロを使用します。YYERRORマクロからは、yyerror関数は呼ばれません。エラーメッセージを表示したいときは、YYERRORマクロの前にyyerror関数を呼び出します。    </description>
    <dc:date>2005-11-02T12:12:21+09:00</dc:date>
    <utime>1130901141</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kiminori_hirose/pages/9.html">
    <title>Flex</title>
    <link>https://w.atwiki.jp/kiminori_hirose/pages/9.html</link>
    <description>
      *Flex 2.28

**アクションの前に常に実行されるアクションを定義したい。
YY_USER_ACTIONマクロに定義します。ただし、&lt;&lt;EOF&gt;&gt;のアクションの前には実行されないようです。例のようにバイト数カウンターを作成するときにyymore()関数、yyless()関数、unput()関数、input()関数を使用した場合はアクション内でカウンターを編集する必要があります。

&gt;例：#define YY_USER_ACTION nCounter+=yyleng;

**初期時だけ実行されるアクションを定義したい。
YY_USER_INITマクロに定義します。ただし、このマクロが実行される時点では、yyout関数は利用できません。

&gt;例：#define YY_USER_INIT nCounter=0;

**マッチした文字列をなかったことにして、入力ストリームに戻したい。
yyless(n)関数を使用します。マッチした文字列の先頭からnで指定したバイト数をyytextに残して、それ以降の文字列を入力ストリームに戻します。yyless関数を呼び出した後にはyytextやyylengの値が変更されます。n=0のときはyytextの文字列すべてを入力ストリームに戻します。

&gt;例：[0-9]+  { yyless(0); }

**マッチした文字列を、次にマッチする文字列と結合したい。
yymore()関数を使用します。yytext文字列に結合した文字列が入ります。

&gt;例：[0-9]+  { yymore(); }

**デバッグ情報を標準エラーで出力したい。
flexのファイルに %option debug を設定します。次にyyset_debug()関数でデバッグ値を１に設定します。

flexファイル内で
&gt;例：%option debug

字句解析器を呼び出すプログラムで
&gt;例：
&gt;yyscan_t scanner;
&gt;yylex_init(&amp;scanner);
&gt;yyset_debug(1,scanner);

**字句解析器を標準入力ではなく、文字列から処理させたい。
yy_switch_to_buffer()関数とyy_scan_bytes()関数とを組み合わせて使用します。    </description>
    <dc:date>2012-06-20T22:00:43+09:00</dc:date>
    <utime>1340197243</utime>
  </item>
  </rdf:RDF>
