先日とある @ttkzw さんからX201sを譲っていただいたのでfedoraを入れて使ってます。
mozcとかchromeとか入れてまぁ快適なんですけど、キーがちょっといまいちアレなんですよね。
ちなみに日本語キーボードです。カナ入力だし。
Play frameworkでisucon2アプリを書く-6
Play frameworkでisucon2アプリを書く-5
このエントリはPlay frameworkひとりアドベントカレンダーの20日目です。
今日は /ticket/ を実装します。
昨日までと同じ流れでいきましょう。
- 元コードを見てcontrollerのinput/outputとviewのinput/outputを確認
- modelを作る
- viewを作る
- controllerを作る(TODOでよい)
- 表示確認
- controllerを作りこむ
viewを仮実装する場合、注意点がひとつあります。
それは viewのファイルサイズに制限がある ということ。
Play frameworkでisucon2アプリを書く-4
このエントリはPlay frameworkひとりアドベントカレンダーの19日目です。
今日は /artist/ を実装します。
controllerを移植
例によって元コードを見ます。
get '/artist/:artistid' => [qw(recent_sold)] => sub { my ($self, $c) = @_; my $artist = $self->dbh->select_row( 'SELECT id, name FROM artist WHERE id = ? LIMIT 1', $c->args->{artistid}, ); my $tickets = $self->dbh->select_all( 'SELECT id, name FROM ticket WHERE artist_id = ? ORDER BY id', $artist->{id}, ); for my $ticket (@$tickets) { my $count = $self->dbh->select_one( 'SELECT COUNT(*) FROM variation INNER JOIN stock ON stock.variation_id = variation.id WHERE variation.ticket_id = ? AND stock.order_id IS NULL', $ticket->{id}, ); $ticket->{count} = $count; } $c->render('artist.tx', { artist => $artist, tickets => $tickets, }); };
- artist.idでartistからartistを取得
- artis.idでticketからticketを取得
- ticketごとにカウントを取得
さて、ticketごとのカウントをviewにどう渡すか困ってしまいました。。
とりあえず動けばいいので、力技ですがHashMapで渡すことにしましょう。
Play frameworkでisucon2アプリを書く-3
このエントリはPlay frameworkひとりアドベントカレンダーの18日目です。
今日はトップページを動的にしてみましょう。
といっても左枠の「最近購入されたチケット」は実装がややこしそうなのでとりあえず放置。 まずは右側のみ実装してみます。
[Read More]Play frameworkでisucon2アプリを書く-2
このエントリはPlay frameworkひとりアドベントカレンダーの17日目です。
今日はまず静的ファイルを配置しましょう。
全体を通した作戦として、モチベーションを落とさないために画面が表示できる状態を保ちつつ開発することにします。
[Read More]Play frameworkでisucon2アプリを書く-1
Play framework動作環境のチューニングに手をつける
このエントリはPlay frameworkひとりアドベントカレンダーの15日目です。
ネタなくなってもーた(´・ω・`)
というわけでだいたい作れるようになったので、Playの動作環境そのもののチューニングに手をつけていきましょう。
[Read More]Play frameworkで外部URLを呼び出す
このエントリはPlay frameworkひとりアドベントカレンダーの14日目です。
最近はOAuthやらなにやらで外部URLを呼び出すことが多いですよね。
というわけでその方法を紹介します。
Play frameworkのviewで使うScala入門
このエントリはPlay frameworkひとりアドベントカレンダーの13日目です。
昨日からviewをいじってますが、Play framework 2ではviewとして Scala
を使うのです。。。