Programming

最近のLaravelの学習進捗

 Author:fumiyasac

最近はAndroidアプリを開発したり、ずっと続けているCakePHPのWebサービスと並行してもう一つ最近のラインナップとしてlaravelを触っています。最初は簡単に管理画面部分から作成をしているのですが、その中でこれは良かったかもと思ったものをご紹介します。

1. 画像アップロード(laravel-stapler)

【特徴】
Ruby on Rails界隈で有名なGemのpaperclipにインスパイアされて作られたプラグイン。
https://github.com/CodeSleeve/laravel-stapler

基本はこの通りにやれば大丈夫なんだけど、下記ハマりどころと解決方法を紹介します。
(あとは英語を頑張って読んでみてください)

【ハマったとこ】

  1. php artisan stapler:fasten

が効かない。

【こう対応した】
以下のカラムを追加する

・追加するカラム

  • (string) avatar_file_name
  • (integer) avatar_file_size
  • (string) avatar_content_type
  • (timestamp) avatar_updated_at

・SQL文

  1. ALTER TABLE [テーブル名] ADD (
  2. avatar_file_name varchar(256),
  3. avatar_file_size int(11),
  4. avatar_content_type varchar(256),
  5. avatar_updated_at timestamp
  6. );

インスパイア元のライブラリ(paperclip)を使用した経験があれば、書き方もなんとなくわかります。
自分はRailsのpaperclipを使ったことがあるので、上記のつまずいた点以外については問題なくできました。

2. 日本語バリデーションの詰め合わせ

参考URLは下記になります。
特にバリデーションはデフォルトだと英語なので、日本語化したいところです。

https://gist.github.com/ishinao/5997898

【使い方】

手順1:まずは日本語化
app.phpの ‘locale’ の部分を ‘ja’ へ変更(55行目)

  1. 'locale' => 'ja',

手順2:上のURLに紹介されているvalidation.phpを
/lang/ja/の中にぶち込んであとはカスタマイズ
(一応画像アップに関するバリデーションも考慮されています)

3. 将来的にやりたいこと

このあたりのものは、まだ検証はがっちりできている訳ではないのですが、サービスを作る中で試していければと思います。

その1:OAuth

・認証方法
http://blog.ishinao.net/2013/07/11/28314/
http://blog.ishinao.net/2013/07/12/28345/
・ライブラリ

https://github.com/artdarek/oauth-4-laravel

その2:UserAgent判定
https://github.com/jenssegers/Laravel-Agent

触ってみての雑感ですが、SymfonyとRuby on Railsが合わさった感じですね。