2

Yesodで、doubleのJSON配列を持つテキストフィールドであるカスタムフィールドを作成したいと思います。ただし、タイプエラーが発生し続けます。私の現在の試みは次のとおりです。

    doubleListField :: RenderMessage master FormMessage => Field sub master [Double]
    doubleListField = Field
        { fieldParse = parseHelper $ Right . decodeUtf8 . parse json

        , fieldView = \theId name attrs val isReq -> toWidget [hamlet|
        $newline never
    <input id="#{theId}" name="#{name}" *{attrs} type="number" :isReq:required="" value="Hey">
    |]
         }   

(正しい空白が見つかりました:https ://gist.github.com/4394850 )

私は現在失敗しています:

        Couldn't match expected type `Data.ByteString.Internal.ByteString'
            with actual type `[Text]
                              -> m0 (Either (SomeMessage master0) (Maybe Text))'
In the second argument of `($)', namely `parseHelper $ Right'
In the `fieldParse' field of a record
In the expression:
  Field
    {fieldParse = parse json $ parseHelper $ Right,
     fieldView = \ theId name attrs val isReq
                   -> toWidget (\ _render_a5Cg -> ...)}

fieldView変更して、その方法を知っていますが、fieldParseがどのように表示されるかについては混乱しています。ありがとう!

4

1 に答える 1