Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hatena/hatena-newbie
はてな研修用プロジェクトひな形
https://github.com/hatena/hatena-newbie
Last synced: about 2 months ago
JSON representation
はてな研修用プロジェクトひな形
- Host: GitHub
- URL: https://github.com/hatena/hatena-newbie
- Owner: hatena
- Created: 2013-10-11T05:07:38.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2015-10-27T10:03:11.000Z (about 9 years ago)
- Last Synced: 2024-04-15T00:05:00.115Z (8 months ago)
- Language: Perl
- Homepage:
- Size: 131 KB
- Stars: 5
- Watchers: 31
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Hatena::Newbie
(newbie) `script/generate Project::Name` : 雛形のインスタンスを生成
## セットアップ
以下のコマンドを実行。
```
$ script/setup_db.sh
```## サーバ起動
以下のコマンドでサーバが起動できる。デフォルトでは http://localhost:3000/ にアクセスすれば良い。
```
$ script/appup
```## API
### `$c`
- `Hatena::Newbie::Context`
- コンテキストという名が示すように、ユーザーからのリクエストにレスポンスを返すまでに最低限必要な一連のメソッドがまとめられている### `$c->req`
- リクエストオブジェクトを返す
- [`Plack::Request`](http://search.cpan.org/dist/Plack/lib/Plack/Request.pm)を継承した`Hatena::Newbie::Request`### `$c->req->parameters->{$key}`
- `$key`に対応するリクエストパラメーターを返す
- クエリパラメーターやルーティングによって得られたパラメーターなど全てが対象となる### `$c->dbh`
- データベースのハンドラを返す
- [`DBIx::Sunny`](http://search.cpan.org/dist/DBIx-Sunny/lib/DBIx/Sunny.pm)### `$c->html($template_file, $parameters)`
- ファイル名とテンプレート変数を受け取ってレンダリングされたHTMLをレスポンスに設定する
```perl
$c->html('index.html', { foo => $bar });
```### `$c->json($object)`
- ハッシュリファレンスを受け取ってJSON文字列化したものをレスポンスに設定する
```perl
$c->json({ spam => $egg });
```### `$c->throw_redirect($url)`
- 大域脱出して渡されたURLにリダイレクトする
```perl
$c->throw_redirect('/');
```### `$c->res`
- レスポンスオブジェクトを返す
- [`Plack::Response`](http://search.cpan.org/dist/Plack/lib/Plack/Response.pm)