メイン

2008年1月24日

Symfonyプラグインまとめ ~その2~
このエントリーをブックマークに追加 このエントリーをlivedoorクリップに追加

yukiです。

前回のエントリから大分時間がたってしまいましたが、symfonyプラグインまとめ~その2~をお送りしたいと思います。
今日までに追加された分と未紹介の分についてのご紹介です。

  • Dynamic Generators
    sfCssTabsplugin
    Word Press の管理画面風なタブレイアウト
    sfSavvyPlugin
    symfonyの追加ヘルパー
    sfSiteMapPlugin
    簡易サイトマップ作成
    sfSitemap2Plugin
    sfSiteMapPluginを使ってオブジェクト/配列からXML作成
    sfUIPlugin
    データグリッド作成支援
  • JavaScript
    • Not Based on a JS Framework
      sfAjaxUploaderPlugin
      ajaxを利用したアップロードフォームタグヘルパー
      sfJSONRPCPlugin
      JSON-RPCの利用
      sfLlooggPlugin
      LLOOGGコード埋め込みフィルタ
      sfMilonicPlugin
      Milonicを利用したドロップダウンリスト
      sfPJSPlugin
      actionからjsファイルを動的に生成
      sfUJSPlugin
      actionからjsファイルを動的に生成
      sfUrchinPlugin
      Google Analiticsのコードを埋め込む
    • Dojo
      sfDojoPlugin
      DoJo Toolkitの追加
      sfUnobstrusiveDojoPlugin
      Dojoの利用ヘルパー
    • Ext
      sfExtJSPlugin
      Ext1.x系の利用支援
      sfExtjs2Plugin
      Ext2.x系の利用支援
      sfExtjsThemePlugin
      scaffold生成した管理画面でExtを利用
    • jQuery/jQueryUI
      ddJQueryCalendar
      jQuery calenderの追加
      mqThickboxPlugin
      Thickbox の利用
      sfJqueryPlugin
      Jqueryの利用
      sfTaconitePlugin
      JQuery Taconite Pluginの利用
    • Prototype/Scriptalicious
      dwPrototypeTooltipPlugin
      prototypeベースのツールチップ
      dwPrototypeWindowPlugin
      prototypeベースのウィンドウ・ダイアログ
      sfgWidgetsPlugin
      gWidgets libraryの追加
      sfLightboxPlugin
      LightBox2の利用
      sfLightWindowPlugin
      LightWindow v2.0の利用
      sfModalBoxPlugin
      ModalBoxの利用
      sfNiftyPlugin
      Nifty corner cubeの利用
      sfPrototypePlugin
      デフォルトのprototype.jsを置き換えて使えるようにする
    • YUI
      sfYUIPlugin
      YUI(Yahoo UI Library)の利用
  • 画像・動画・Flash・PDF
    • 共通
      sfMediaLibraryPlugin
      アップロードされたメディアの管理支援
      sfMogileFSPlugin
      MogileFSを利用支援
    • Flash
      dwSwfChartPlugin
      SWFChartsを使ったチャート生成
      sfAmChartsPlugin
      amChartを使ったチャート生成
      sfSIFRPlugin
      sIFRの利用
      sfSwfObjectHelperPlugin
      javascriptを利用したSWFObjectヘルパー
    • 画像
      dwJpgraphPlugin
      JpGraphの利用
      sfChartDirectorPlugin
      ChartDirectorの利用
      sfFlickrGalleryPlugin
      FlickrAPIの利用
      sfGallery2Plugin
      Gallery2の利用
      sfSmiliePlugin
      Wordpress Smiliesの利用
      sfTextReplacementPlugin
      GDを使った文字の画像化
      sfThumbnailPlugin
      アップロードされたサムネイルの生成
    • PDF
      sfDomPDFPlugin
      HTMLをPDFに変換
      sfOpenOfficePlugin
      OpenOffice形式の出力支援
      sfPDFLatexPlugin
      LaTexを利用してPDF出力
      sfTCPDFPlugin
      TCPDFを利用してPDF出力
    • 動画
      sfFLVPlayerPlugin
      FLVプレイヤー

参照元:

2007年12月 3日

symfonyでよくあるトラブル
このエントリーをブックマークに追加 このエントリーをlivedoorクリップに追加

yukiです。

今回はsymfony+MySQLを使って開発していた際に遭遇したトラブルとその対処を紹介したいと思います。

(1) ビルドしたPropelクラスで、DATETIME値が'0000-00-00 00:00:00'の時

SQLとしては問題なくとも、getTimeStampで取得する際にエラーになります。
NULL値を使うのが一番なのですが、外部の設計だったりするなど今回は変更できない場合に該当しました。
symfony側でもtrac で認識はされていますが、Creole の問題として対処しないことになっているようですので、今度はCreoleのtrac を見てみると、対処されているのがわかり、freeze化していれば影響は該当サイトのみにとどまりますので、今回は自作パッチを当てて対処しました。
そのうちsymfony側で対応してくれることを期待しておきます。

(2) カラム名に予約語を使わない

これもありがちですが、カラム名に「count」などの予約語を使うと、自動生成されたPropelのBaseオブジェクトを利用しようとすると、オブジェクト定数として利用しているため二重宣言となり、FATALエラーとなります。(phpNameでエイリアスをつけても駄目)propel-build-modelコマンドは普通に通過しますので見落としますが、注意してください。

(3) redirect での引数の型が違う

これも若干はまりどころですが、redirectする際、'module/action'と文字列で'/'で区切って記述しますが、routingを利用して引数も渡したい場合、素直に書くと'foo/bar/variable'となります。
しかしこのように正直に書いても'variable'が絶ち落とされてしまいます。
この場合はどうするかというと、まずrouting.ymlで下記のように書いてあるものとして、

foo_bar_hoge:
  url:      /foo/bar/:hoge
  param:    { module: home, action: bar }

次に、redirectメソッドの引数は素直に書くのではなく、配列で渡します。

$this->redirect(array('module' => 'foo', 'action' => 'bar', 'hoge' => 'variable'));

これで正しくリダイレクトされ、引数も渡されます。

この様に若干ドキュメントに書いていないトラブルはあるものの、逆に書いていない部分で便利な機能があったりしますので(特にヘルパー)、ぜひ一度ソースを読んでみてはいかがでしょうか。

2007年10月 3日

Symfonyプラグインまとめ ~その1~
このエントリーをブックマークに追加 このエントリーをlivedoorクリップに追加

yukiです。

PHPのフレームワークは数多くありますが、みなさん選ぶポイントはどのような点でしょうか。
セキュリティの問題など多々あると思いますが、共通しているのは「楽をすること」だと思います。
最近は自宅で開発する時はsymfonyを使おうかと思い調べてみたところ、優秀なプラグインが多くありました。
今回はその一部をご紹介をしたいと思います。

  • Dynamic Generators
sfCssTabsplugin
Word Press の管理画面風なタブレイアウト
sfSavvyPlugin
symfonyの追加ヘルパー
sfSiteMapPlugin
簡易サイトマップ作成
sfSiteMapPlugin
簡易サイトマップ作成
  • JavaScript
ddJQueryCalendar
jQuery calenderの追加
sfDojoIntegration
DoJo Toolkitの追加
sfWidgetsPlugin
gWidgets libraryの追加
sfJSONRPCPlugin
JSON-RPCの利用
sfLightboxPlugin
LightBox2の利用
sfLightWindowPlugin
LightWindow v2.0の利用
sfMilonicPlugin
Milonicを利用したドロップダウンリスト
sfModalBoxPlugin
ModalBoxの利用
sfNiftyPlugin
Nifty corner cubeの利用
sfPJSPlugin
actionからjsファイルを動的に生成
sfPrototypePlugin
デフォルトのprototype.jsを置き換えて使えるようにする
sfTaconitePlugin
JQuery Taconite Pluginの利用
sfUJSPlugin
actionからjsファイルを動的に生成
sfUnobstrusiveDojoPlugin
Dojoの利用ヘルパー
sfUrchinPlugin
Google Analiticsのコードを埋め込む
sfYUIPlugin
YUI(Yahoo UI Library)の利用

http://trac.symfony-project.com/wiki/SymfonyPluginsご紹介したプラグイン以外にもここに数多くのプラグインが詳しく載っていますのでご参考下さい。
次回はもう少しコード内部に影響するプラグインをご紹介しようと思います。

SaaS提供の高性能CMS RCMS
SaaS提供の高性能CMS


About symfony

ブログ「ウノウラボ Unoh Labs」のカテゴリ「symfony」に投稿されたすべてのエントリーのアーカイブのページです。過去のものから新しいものへ順番に並んでいます。

前のカテゴリはPythonです。

次のカテゴリはTipsです。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

ウノウサービス