Yesodにもだいぶ慣れてきました。慣れるまではなかなかコンパイルを通せず苦労しますが、コンパイルに通りさえすれば意図通りに動かないということはまずありません。 YesodはHaskellの素晴らしさを見事に受け継いでいるな、と感じます。 さて今回はファイルアップロードのTipsを。 ポイントはFileInfoという型と、fileAFormReq(Opt)関数です。 アップロードされたファイルはFileInfoで受け取ります。 input type="file"を構成するのは、fileAFormReq(Opt)関数です。 ハンドラの例。 module Handler.File where import Import import Data.Text (append) data FileForm = FileForm { file1 :: FileInfo , file2 :: Maybe