问题标签 [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 投票
1 回答
426 浏览

haskell - 如何在 yesod 中将 Json 转换为 Html?

yesod-0.9.3 中是否有某种方法可以转换JsonHtml将其包含到<script/>标签中?

使用Yesod.JsonandData.Aeson我可以得到一个Json类型的值,我想将它用作标签中引入的变量的值<script>,即不是返回RepJson,而是将其作为RepHtml.

0 投票
1 回答
285 浏览

haskell - yesod 中嵌套结构的形式

我有以下类型:

目前我的表格如下所示:

我目前对以下事实感到非常满意,即每种“奶酪”都需要一种形式(尽管我当然不介意使用动态形式..)。但是,我真的很想摆脱在每种形式中重复“用餐名称”。我可以以某种方式组合这些表格,还是我最终必须选择 Monadic 表格?

0 投票
1 回答
233 浏览

haskell - 如何解决 yesod ipv6 only 问题?

yesod有一个突出的问题,它只监听 ipv6。
我在五分钟内遵循 yesod 指南,并且在运行“yesod devel”时遇到了这个问题。我现在如何修复它并启动并运行以试用该框架?我尝试编辑 myapp/dist/devel.hs 以使用带有 ipv4 地址集的 Warp 的 runSettings 而不是默认运行,但再次运行“yesod devel”只是写了 myapp/dist/devel.hs 文件。

0 投票
1 回答
190 浏览

haskell - 需要帮助清除与返回类型的混淆

我有一个函数太复杂,无法明确说明函数类型应该是什么。我试图让 GHC 同意我所期望的就是它所期望的。首先,功能,我认为它应该做什么。然后,混乱出现在哪里。

这个想法是我从一个[Either UnFlaggedDay CalendarDay] 我开始遍历列表,将一些UnFlaggedDays 转换为CalendarDays。其他函数将转换UnFlaggedDays 的其余部分。下面我定义了我正在使用的类型。

所以这就是问题所在,当我编译时出现这个错误,这本身并不令人困惑。

好的,看起来我需要做的就是应用一个放置良好的 concat,我可以使实际类型GGHandler sub0 master0 monad0 [[Either UnFlaggedDay CalendarDay]] 与预期类型匹配GGHandler sub0 master0 monad0 [[Either UnFlaggedDay CalendarDay]]

但是等等,没那么简单。这是许多尝试中的一种,无论我将 concat 放在哪里,它似乎都会导致相同的错误。

你看到那里发生了什么吗?这是我所做的更改。我在传递processedDaysconcat之前传递给return

因此,看起来像直截了当的更改却并非如此的事实向我表明,我并不真正了解问题所在。有任何想法吗?

更新:我做了丹尼尔建议的更改,但收到此错误:

更新:这个问题已经解决了,只是为了揭示其他(类似的)问题。我将接受这里给出的建议以继续前进。

0 投票
1 回答
757 浏览

haskell - 如何在一个简单的 wai 应用程序中使用 wai-handler-devel

我有使用 wai 的基本“hello world”应用程序设置,并且想使用 wai-handler-devel,但我不确定如何去做,也找不到在 wai 项目中使用它的任何示例。

我需要做什么才能让 wai-handler-devel 使用基本的 wai 应用程序?

注意:如果您遇到“wai-handler-devel: command not found”问题,这里有一个修复(https://gist.github.com/1499226 )

0 投票
2 回答
1197 浏览

haskell - 如何在没有隐藏模块错误的情况下在 yesod 中使用 UTCTime?

我正在使用 yesod 创建一个简单的网站。

它一直在工作,直到我将 UTCTime 类型的字段添加到我的数据库模型中。

我最初收到一个错误,建议我将“time-1.2.0.3”添加到我的 cabal 文件中,所以我这样做了,现在在没有建议的情况下我得到了同样的错误:

cabal 生成的 ghc 命令行是:

所以 time-1.0.2.3 肯定被引用了。

所有软件包都是在过去 24 小时内下载的,因此它们应该是最新的。

如何取消隐藏 Data.Time.Clock.UTC?

0 投票
3 回答
3696 浏览

haskell - Yesod:通过 ID 从 Int 获取数据库实体

我是 Haskell 和 Yesod 的新手,我正在尝试构建一个简单的 Web 应用程序,可以回答来自外部 API 的查询。我已经构建了一个解析器(使用 Parsec),它可以获取我想要作为常规 Int 值加载的实体的 ID。

但是,我一生无法弄清楚如何将这个 Int 变成get可以接受的东西(即Key(?))。文档中的所有示例仅从以前的插入或 url 调度中获取 id。

任何帮助将不胜感激,因为我似乎被卡住了...... :)

0 投票
3 回答
36513 浏览

linux - 将 Yesod 部署到 Heroku,无法静态构建

我对 Yesod 很陌生,我在静态构建 Yesod 时遇到了麻烦,因此我可以部署到 Heroku。

我更改了默认的 .cabal 文件以反映静态编译

它不再构建。我收到一大堆警告,然后是一堆未定义的引用,如下所示:

如果我只是编译-static而没有-optl-static 一切构建正常,但应用程序在尝试在 Heroku 上启动时崩溃。

我尝试按照此处的建议将 libgmp.so.10 添加到 LD_LIBRARY_PATH 中 ,然后出现以下错误:

似乎我正在编译的 libc 版本不同。我还尝试像对 libgmp 一样将 libc 添加到一批库中,但是当应用程序在 Heroku 端启动时,这会导致分段错误。

在我的电脑上一切正常。我正在使用 ghc 7.0.3 运行 64 位 archlinux。 Yesod 官方博客上的博文看起来很简单,但我现在很难过。有人有想法么?如果有办法让这个东西在静态构建的情况下工作,我也愿意。

编辑

每个Employed Russians答案我做了以下来解决这个问题。

首先在项目目录下新建一个lib目录,把缺少的共享库复制进去。您可以通过运行并比较输出来获取此ldd path/to/executable信息heroku run ldd path/to/executable

然后我这样做了heroku config:add LD_LIBRARY_PATH=./lib,当应用程序启动时,动态链接器将在新的 lib 目录中查找库。

最后,我创建了一个 ubuntu 11.10 虚拟机,并从那里构建并部署到 Heroku,它有一个足够老的 glibc,可以在 Heroku 主机上运行。

编辑:我已经在Yesod wiki上写了一个教程

0 投票
2 回答
1426 浏览

haskell - 选择 AMI 来部署 haskell 应用程序?

我正在使用我最终想要部署到 EC2 的 yesod 开发一个 haskell Web 应用程序,有人可以推荐一个具有最新的 haskell 平台和可从存储库安装的 git 客户端的 AMI 吗?

0 投票
1 回答
82 浏览

yesod - 需要有关如何进行 Yesod 安装的建议

我将以下错误解释为 Yesod 依赖项 authenticate-0.10.2.2 需要 attoparsec ==0.9.*,但 Yesod 本身需要 attoparsec >=0.10。我能做些什么来解决这个问题?>