问题标签 [yesod]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
131 浏览

haskell - 有人可以向我解释我应该如何修复这种类型签名吗?

这是代码,我尝试让类型推断找出函数的类型。当代码编译时,它在运行时失败。

:t isFree

isFree :: PersistBackend b m => C.Day -> b m Bool

0 投票
1 回答
1083 浏览

rest - 如何在 Yesod 中调用 DELETE 请求方法?

在关于路由的书中(http://www.yesodweb.com/book/routing-and-handlers)有一段:

每个请求方法的单独处理程序将相同,加上请求方法列表。请求方法必须全部为大写字母。例如,/person/#String PersonR GET POST DELETE。在这种情况下,您需要定义三个处理函数 getPersonR、postPersonR 和 deletePersonR。

执行类似的东西

curl -X 删除本地主机:3000/person/1

有效,因此服务器能够处理这些请求。

几个示例(如https://github.com/snoyberg/haskellers/blob/master/routeshttp://pbrisbin.com/posts/posts_database)使用 GET 或 POST 请求(而不是 DELETE)来处理此问题。

有没有一种直接的方法可以从 Yesod-code 调用 DELETE 请求?所以路由处理程序deletePersonR被调用?

0 投票
1 回答
185 浏览

haskell - 如何在 ghci 中检查 Handler Monad 中的值?

我有一个类型 Handler [Maybe AvailableDay] ,我想在 ghci 中检查 [Maybe AvailableDay] 的内容。我怎么做?

0 投票
1 回答
289 浏览

haskell - 我的逻辑有什么问题?

我正在尝试确定特定日期是否符合此标准:不等于 TestStartDate,不等于 TestEstimatedEnd,并且 Passed 和 Failed 都不是 TestStatus 的成员。

但是,我想证明我选择的日期(应该与 TestEstimatedEnd 匹配)未能做正确的事情。它应该说 :date 不可用。那么我的逻辑有什么问题呢?

0 投票
1 回答
1142 浏览

facebook - 在 haskell 中编写 facebook 应用程序的最佳方法是什么?

我在 haskell 和 yesod web 框架中构建一个站点作为一个辅助项目,我想做的是创建一个 facebook 应用程序,让用户可以搜索他们的墙以及他们的朋友和群组的墙。

我考虑过使用 JavaScript SDK,但是大部分工作将在从 postSearhR 辅助函数调用的辅助函数中在幕后进行,因此这行不通。

在 google 上搜索短语“haskell“构建 facebook 应用程序”和变体并没有发现任何问题,并且一瞥 hackage 显示了一个名为 happstack-facebok 的 0.30 版本的包,没有黑线鳕文档。使用 haskell 和 facebook 标签搜索 SO 也不会返回任何有用的信息。

有人知道我可以使用的例子吗?

0 投票
2 回答
174 浏览

yesod - 有没有办法强制浏览器不缓存?

差不多就是这样。我遇到的问题取决于浏览器是否正在缓存。我需要强制浏览器不缓存。

0 投票
1 回答
277 浏览

mongodb - 映射到旧版 MongoDB 存储

我正在尝试编写一个 Yesod 应用程序来替代在后端使用 MongoDB 的 Ruby JSON 服务,但我遇到了一些障碍。

  1. 模型文件中的 sql=foobar 语法似乎不太影响 Persistent.MongoDB 使用的集合。我该如何改变呢?
  2. 有没有一种方法可以轻松地将 mongodb(最好通过 yaml 文件)配置为显式只读?知道应用程序不可能覆盖或损坏生产数据,我会更放心地部署它。
  3. 有什么方法可以让 Persistent.MongoDB 忽略它不知道的字段?该服务只需要相关集合中的一小部分字段。为了使代码尽可能简单,我真的很想映射到我关心的字段并让 Yesod 忽略其他所有内容。相反,它抱怨字段不匹配。
  4. 如何为模型定义实例,例如 ToJSON。我想自定义 JSON 的呈现方式,但出现以下错误:

ToJSON Product' (All instance types must be of the form (T t1 ... tn) where T is not a synonym. Use -XTypeSynonymInstances if you want to disable this.) In the instance declaration for处理程序/ProductStat.hs:8:10:ToJSON 产品的非法实例声明

0 投票
2 回答
224 浏览

haskell - 在 Yesod 处理程序中使用 Data.Binary.decodeFile

我试图编译以下内容:

但我收到以下编译器错误:

关于如何在 Yesod 处理程序中使用 Data.Binary.decodeFile 的任何想法?

0 投票
1 回答
131 浏览

haskell - 包含一次小部件?

我正在使用带有脚手架站点的 yesod 0.9.3。有什么方法可以将某些小部件仅包含在结果页面中一次(或者,最好使某些小部件仅包含一次),就像addScript这样addStylesheet做?我可以在页面处理程序中调用这样的(依赖)小部件,但这打破了(依赖)小部件作为一个独立实体的整个想法,您只需在需要时调用它。

例子:

这导致 HTML 带有指向样式表的链接,其中包含

也就是说, addCommonStyle 包含两次。

0 投票
1 回答
329 浏览

haskell - 使用 Julius 或 Lucius 将脚本或样式添加到页面

我有一个 Yesod 0.9.3 脚手架站点,其中包含一些对于每个页面都不同的小片段,例如从不确定数量的搜索结果生成的特定 id 属性的样式,我想将它们放置在页面中<style><script>标签中<head>,这样它们就不会污染我的/static/tmp(而其余的 lucius/julius 模板被放置在生成的文件中,从而为整个站点生成了十几个这样的文件)。

addJulius并将addLucius它们的内容包含到一个根据其内容生成的通用 .js 或 .css 文件中(至少对于 Lucius 而言)。

有没有办法做到这一点,比这更直接?

这最终出现在生成的文件中,而不是页面内的样式标记中: