サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
2024年ランキング
gomojp.blog77.fc2.com
WEBアプリケーション研究室 開発ノート TOP WEBアプリケーション研究室 開発ノート [symfony] YAMLでちょっと複雑な配列を再現する。 たいして複雑じゃないといわれそうだがちょっとてこずったので書いておきます。 作りたかったのは下のような配列 [menu_category] => Array ( [0] => Array ( [title] => エリア [items] => Array ( [0] => Array ( [title] => 地方 [uri] => region/list ) [1] => Array ( [title] => 都道府県 [uri] => prefecture/list ) [2] => Array ( [title] => 駅 [uri] => station/list ) [3] => Array ( [title] => 路線 [u
SmartyのメジャーバージョンアップSmarty3のBETAが煮詰まってきた感じなので試してみました。BETAなので機能は変更されるかもしれません。 まずソースを眺めて最初に気づくのは本体であるSmarty.class.phpが異様に小さいことです。assignやdisplayといったメソッドさえも見当たりません。個々の機能は小さなクラスに分かれていて、いわゆるLazy load(遅延ロード)をとりいれているようです。必要の無い機能は読み込まないというわけです。 セットアップ 基本的には以前のバージョンの構文が使えるらしいのですが、$default_modifiersが廃止されたので、使っている場合は注意が必要です。当然smarty:nodefaultsがテンプレに書いてあってもエラーになります。 $default_modifiersの替りにvariablefilterという機構が用意さ
モバイルでフォームに日本語の値を戻すときに文字化けが発生しました。 モバイルの文字コード変換は自家製のフィルタでやっていました。resuestのParameterHolderの中身にをUTF-8に変換し、処理後、すべてのrespose contentsをShift_JISに変換していました。一部抜粋するとこんな感じです。 public function execute($filterChain) { $response = $this->getContext()->getResponse(); if ($this->isFirstCall()) { $agent = GmAgentMobile::getInstance(); if($agent->isDoCoMo()) { $response->setContentType('application/xhtml+xml; charset=
WEBアプリケーション研究室 開発ノート TOP WEBアプリケーション研究室 開発ノート [iPhone開発]UINavigationControllerで更新後に親のTableをreloadする UITableViewセルをクリックして、UINavigationControllerに新しい編集用のTableViewをpush、編集後保存ボタンをイベントにして、元のリストの一覧を読み直すというのをやってたのですが、とある本によると以下のようにやっていました。 [self.navigationController popViewControllerAnimated:YES]; NSArray *allControllers = self.navigationController.viewControllers; UITableViewController *parent = [allCon
WEBアプリケーション研究室 開発ノート TOP WEBアプリケーション研究室 開発ノート [iPhone開発]UIViewControllerの初期化メソッドとタイミング Viewをnibファイルから読み込んで表示するとき様々なタイミング初期化メソッドが呼ばれます。 #import "ViewBaseViewController.h" @implementation ViewBaseViewController @synthesize label; - (void)loadView { [super loadView]; NSLog(@"loadView"); } - (void) viewWillAppear:(BOOL)animated { NSLog(@"viewWillAppear"); } - (void) viewDidAppear:(BOOL)animated { NSLo
actionで設定した変数をlayout.phpで使用することは出来ません。 使用するにはスロットを使います。 もともとは例えばサイドバーの内容をaction毎に切り替えたりする場合に使います。 まずlayout.phpに <?php if (has_slot('slot')): ?> <?php include_slot('slot') ?> <?php else: ?> ここにデフォルトのものを入れる。 actionの変数はここでは使えません。 <?php endif; ?> そして、この内容を上書きたいactionのテンプレートで <?php slot('slot') ?> ここに内容を書く。 ここでは当然actionの変数が使えます。 <?php end_slot() ?> これでこのaction実行時にはこの内容が表示されます。 layout.phpにデフォルトのスロット(els
例えば同時にいくつかHTTPリクエストを投げて一気に画像をとってくる等、非同期通信を使うといい時がありますが、簡単にできるようクラスが用意されてます。同時リクエスト数を簡単に制御できたりもします。Cocoaってすごいフレームワークだなあ(みつを風に) その名もNSOperationです。 #import "MyOperation.h" @implementation MyOperation @synthesize number; - (void)start { NSLog(@"(%@) start"); [super start]; } - (void)main { [NSThread sleepForTimeInterval:0.4]; NSLog(@"(%@) end main"); } - (void)cancel { NSLog(@"(%@) cancel"); [super ca
最近、iPhoneアプリ開発の勉強をしてます。ちょこちょこ書くかもしれません。 UIImageのimageNamedというメッセージでちょっとはまったので書いておきます。 UIImageのimageNamedはMainBandleからファイル名で簡単に画像をロードできます。 UIImageView *image = [UIImageView imageNamed: @"image.png"]; このメソッドは読み込んだ画像をパスをキーにしてキャッシュします。なのでreleaseして再度同じ画像を読み込もうとするとクラッシュします。また、アプリ内で何度も使う画像を読むのには向いていますが、サムネイル表示のような、一時的に使う画像を大量に扱うのには向いていません。そのときは NSString *path= [[NSBundle mainBundle] pathForResource:@"sta
app/config/settings.yml内に all: .settings: escaping_strategy: on escaping_method: ESC_SPECIALCHARS と書くと出力する変数を全部エスケープしてくれます。漏れが出ないので、お勧めのやり方です。あるデータだけエスケープしたくない時は <?php echo $sf_data->getRaw('name') ?> で出来ますが、foreachで配列をまわして同じテーブルの内容を繰り返し出力するような時、エスケープしたい項目と、したくない項目があり困りました。 下のようにして何とか実現しました。 <?php foreach($sf_data->getRaw('sample_cases') as $key=>$sample): ?> <?php echo $sample_cases[$key]->getCom
Parallels10にDSP版のWindows10を入れてみました。 無償アップグレードをする方法はこちらにありましたが、仕事で使ってるため、なにかあるとまずいので、DSP版を購入しインストールしてみました。 インストールしたのはこちら 特に問題なくインストールされ、ライセンス認証も無事通りました。快適に使えてます。
actionからパーシャルを取得するのは $this->getPatial('module/action',array('var'=>$var)); みたいにして取得できますが、メールのテンプレートで、バックエンドとフロントエンドで、共通に使用したいパーシャルがあって、他のアプリケーションのパーシャルを取得できないかと色々試してみました。 パーシャルを取得するのは $view = new sfPartialView($context, $moduleName, $actionName, ''); $view->setPartialVars($vars); return $view->render(); のようにsfPartialViewを使えば簡単に取れるのですが、$contextが必要なので他アプリケーションのContextを作る必要があります。 また、一度他のContextを取得すると
POSTやGETで渡されたデータをアクションで取得するにはいくつかの方法があります。 どれが何かわからなくなったので整理しておきます。 $this->getRequestParameter($name, $defualt); $this->getRequest()->getParameter($name, $defualt); $this->getRequest()->getParameterHolder()->get($name, $defualt); は同じもので、両方ともPOSTとGETとsymfonyによってURLに埋め込まれた変数をまとめて取得します。 ちなみに一番下の $this->getRequest()->getParameterHolder()->get($name, $defualt); が大元で上の二つはこのメソッドを呼び出しています。 URLに埋め込まれた変数とは
GmGuardPlugin sfGuardPluginはすごく便利なのですが、「認証に利用するIDが固定されてしまう」という点と、「ユーザーのテーブルが1対1のリレーションで二つに分かれてしまうのが気持ち悪い」という点が気になって、作ってみました。sfGuardPluginを使った方がいいのかまだ少し悩んでますが、とりあえずアップしてみます。 ご意見ありましたらお願いします。 ※対応ORMはpropelのみです。 ※2009/5/22 remember meの機能でたまに挙動がおかしい時があるのに気づきましたが、1つのプロジェクトで複数のサブドメイン&アプリで運用していて、cookieなど様々なものが絡み合っているので、まだ突き止めていません。どうにか時間を作ってがんばります。何かありましたらコメントお願いします。 一つのユーザーIDが一つのハッシュしか持てなくなっていたので、修正しました
このページを最初にブックマークしてみませんか?
『WEBアプリケーション研究室 開発ノート』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く