Play2のroutesやscala templateを拡張する際の設定が微妙に使いづらい件 #play_ja
Play! v1.X系って割と頑張てっるし頑張ってたんですよ。だからこそv2.Xが出た後のMLが荒れてたと思うんですよね。v2.xでイラッとするところって大体v1.Xでできてた部分なんですよね。僕にもう少し実装力があればなー
2013-02-16 15:46:10@xuwei_k あらかじめ TaskKey か SettingKey か決めなくちゃいけなくて、一度 SettingKey だと決まると TaskKey に依存できないのは確かに厄介ですが、じゃ全部 TaskKey にするというのが正しい解かというとどうだろう。
2013-02-16 15:51:09個人的には Jersey みたいに String を一つ保持する case class だったら何もしなくても mapping 可能みたいなシンプルなのが好み。その case class に toLocalDate() みたいなメソッド生やしてそこから日付オブジェクト取得とかで。
2013-02-16 15:55:29@eed3si9n_ja まぁ確かにその辺りは微妙ですね…全部は明らかにやり過ぎですけど、「TaskKeyかSettingKeyか迷ったら、TaskKeyにしておけ」くらいな
2013-02-16 15:56:43@xuwei_k 理想的にはプラグイン作者もビルド作者もいちいち Task か Setting かを考えずに sbt が勝手に静的か動的かを決定して欲しい。
2013-02-16 15:58:15Javaだとアノテーションで実現するような機能をScalaで実現するときのベストプラクティスが知りたい(まーJava知らないんすけど
2013-02-16 16:10:16@Masahito 反応をみるというか、言い出しっぺが作ることになると思うので、 http://t.co/WVHXi48w こういう流れになるのかなーと・・・。で、Issue切るよりMLから始めたほうが多くの人の目に触れるからMLがいいのかも!
2013-02-16 16:13:52@mumoshu なるほど。楽しみにしてますよ:-) MLに流した方がissueが受け入れられやすいよう感じだよねー
2013-02-16 16:17:24@tototoshi こんにちはー。routesに関しては、routesファイル内でimportが書けたほうが直感的なので、そういうぷるりをしようかなーと思うのですが、どう思われますか?
2013-02-16 16:19:24@tototoshi templateの方も確かにいまいち感あるのですが、Build.scala以外にどこへ書くのがいいのか悩ましいですね…設定ファイルを追加?実行時設定じゃないですがapplication.confに書く?何か良い案があれば教えていただければm( _ _)m
2013-02-16 16:26:04@mumoshu importしなきゃいけないのってマッピングしたいクラス(LocalDate)ではなくてマッピングを請け負うimplicit object(QueryStringBindable)なのでroutesにそれを書いて自然になるかというと微妙だなあと思ってます。
2013-02-16 16:29:32@mumoshu 例えばGlobalみたいになにか決まった名前のオブジェクトを作って、その中にimportしたいオブジェクトを並べておくとかできないかなあとか考えてました。
2013-02-16 16:31:27@tototoshi あーなるほど。確かにroutesにBindableのimportが並んでても全然直感的ではないですね…
2013-02-16 16:33:14@tototoshi おー、なるほど!それって、templatesImportにそのGlobalオブジェクト(パッケージのほうが安全かな)が入ってるような、play.Project向けのデフォルト設定を用意しておけばできるのかな。いいかもしれないですねー。
2013-02-16 16:39:16@tototoshi views.htmlのパッケージオブジェクト等に置いておけばimportされるのかもしれませんねー。Playのビューヘルパーもここに入ってるのでしたっけ… http://t.co/ufySEAfp
2013-02-16 16:44:49@mumoshu ん、なんか伝わってないかもしれないです。言いたかったのは例えば TemplateImports, RoutesImports っていうオブジェクトを用意すればこの中のメンバーがimportされます、みたいな決まりを作って、
2013-02-16 16:58:19@mumoshu RoutesCompiler, TemplateCompiler がそれらのファイルがあるのを検知すれば、生成される Scala コードの頭のほうで、import RoutesImports._, import TemplateImports._ とか
2013-02-16 17:00:12