ファイル名・ファイル文字コード・ローカルファイル
tips_plugin_file
プラグインファイルはメソッド名と同じに
ファイル名はなるべくメソッド名と同じにするのが好ましいですが、複数のメソッドがある場合は、なるべくメソッド名から外れない程度でわかりやすい名前にするようにしましょう。
また、tDiaryがプラグインを読込む時は、アルファベットの昇順でファイルが読み込まれます。したがって、別のプラグインの特定のメソッドを上書きしたい場合は、そのプラグインよりも降順のファイル名をつけます。
プラグインファイルの文字コードについて
ファイルの文字コードはEUC-JPにします。普段WindowsやマッキントッシュやHP-UX(!)を使っている方は気をつけてください。
プラグインからローカルファイルへのアクセス
プラグインからローカルのファイルアクセスする際にはいくつか注意が必要です。
セーフモードでは動作しない
tdiary.confで、@secure = trueに指定されている場合のローカルファイルアクセスは、セキュリティエラーになります。したがって、ローカルファイルアクセスはむやみにしない方が良いということになります。
同時アクセスに対する対処
WWWでは複数のクライアントから同時にアクセスがあることを想定する必要があります。いわゆる排他制御です。 Read Onlyの場合は気にする必要ないですが、Writeする時は細心の注意を図るべきです。
ちなみに、tDiaryは日記データの保存用にRubyに標準添付のPStoreを使っていますが、PStore自身、排他制御機能を持っています。データをバイナリで保存するので、テキスト形式でファイル化したいという場合には使えませんが、特にバイナリでもテキストでも問題がないのであればPStoreはお奨めです。
ただし、古いバージョンのPStoreはCGIから使った場合、ファイルが壊れる現象が多発したことがありましたので注意してください。
ファイルの保存場所
ファイルの保存場所はWWWサーバの権限でアクセス可能な場所にする必要があります。 tDiaryでは、プラグイン用にディレクトリを用意していて、インスタンス変数@cache_pathにそのディレクトリが入ります。このディレクトリは元からWWWサーバがアクセス可能になっているのでそこにプラグインファイル名と同じ名前のディレクトリを作ってファイルを保存すると良いでしょう。
キーワード:
参照:[tDiary関係]