问题标签 [noir]

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 投票
2 回答
209 浏览

clojure - 如何在中间件或预路由中添加身份验证?

如何对发送的每个请求执行身份验证过程。我目前面临的问题是我无法访问作为请求参数发送的用户数据。这是我尝试过的

和中间件

我也添加了中间件。但它们都不起作用..访问用户参数的任何想法..

谢谢

0 投票
1 回答
632 浏览

clojure - Noir - 在这种情况下无法解析符号 html5

我正在尝试使用 noir 并遵循默认教程中给出的教程并使用此代码

但是,clojure 抛出错误并拒绝工作。

0 投票
2 回答
240 浏览

clojure - 在 clojure/webnoir 中关闭服务文件

我在 webnoir 中有以下功能,可以从磁盘提供图像。

我假设我应该关闭文件,但是当我添加(.close file)到函数的末尾java.io.IOException: Stream closed时,访问 URL 时出现错误。处理这个问题的正确方法是什么?

0 投票
1 回答
660 浏览

clojure - 保持所有模型都可以访问全球销售商连接

作为 Clojure、Noir 和 Monger 的新手,我面临的只是一个小问题。正如 Noir 中的标准一样,我将模型保存在 src/app_name/model_name.clj

我面临的问题是我需要在每个模型中与 MongoDB 建立相同的连接,因为我不知道如何正确“共享”连接,如下所示:

我将如何通过整个应用程序共享此连接?谢谢你。

0 投票
1 回答
572 浏览

heroku - Heroku + Clojure(webnoir),如何做 lein clean?

我在 heroku 上托管了一个 webnoir 网站,在重命名命名空间和文件后,我在日志中收到以下错误:

警告:强制未声明为动态的,因此不可动态重新绑定,但它的名称暗示了其他情况。请注明 ^:dynamic coercions或更改名称。

我在网上找到了一些东西,说我应该尝试一个lein clean命令。有谁知道如何实现这一目标?Heroku 帮助没有为此指明命令。

如果我可以通过它做一些事情,我将使用 cloud9 作为我的 ide / heroku 集成。否则我也有 heroku 工具带。

0 投票
2 回答
450 浏览

clojure - Hiccup 中的条件句,我可以让它更惯用吗?

Clojure初学者在这里!我在 Noir 项目中为我的 Hiccup 代码添加了 Flash 消息支持。

我要做的是检查是否设置了每个特定的消息字符串。如果没有消息,那么我不想显示包含该消息的特定 flash 元素。

免责声明:我完全同意,您可能永远不会遇到一次需要多个特定闪光灯的情况,但请让我尝试找出更好、更实用的方法来实现这一点.

我相信有一种处理类似情况的模式。基本上我检查几个表达式的值,用这些值做一堆东西,然后根据结果采取行动。你可以用越来越可怕的(cond)来解决这个问题,但我的解决方案至少更干净一些。

提示?

0 投票
1 回答
251 浏览

clojure - 如何限制 Web 应用程序中的屏幕访问..?

我已经开发了一个应用程序,直到现在我已经成功地通过不显示/隐藏某些屏幕的菜单选项或按钮来限制屏幕访问。但现在的问题是用户在地址栏中输入 url 时能够访问屏幕。

我知道我不是第一个这样做的人,所以必须有某种标准做法。因此,如果有人知道任何图书馆或某种方式来做到这一点,请告诉我。

谢谢你。

0 投票
1 回答
206 浏览

clojure - Noir 中的内容协商

在Noir框架中进行内容协商的首选方式是什么?

我知道这个clj-conneg,但我想知道 Noir 中是否已经包含类似的功能。

0 投票
1 回答
1103 浏览

postgresql - 尝试为 Clojure / Korma / PostgreSQL 站点创建用户登录

我完全不知道从哪里开始获取我正在构建的 Clojure 站点的登录区域(为了好玩)。

我查看了几个资源,我将在下面发布,无情地复制/粘贴代码,我能得到的最接近的是以下两种情况之一:

登录页面进行登录,但说登录失败,但据我所知,登录匹配。

或者我收到此错误:多方法'-> sql'中没有用于调度值的方法:null

我不确定如何解释上述错误:这是指定我需要一个多方法还是指定我需要检查 null?null 要求根本没有意义。我不是真的在问,但如果有人想给出解释,那就太好了。

我通过比较来自原始非散列数据的结果到选择查询来测试输出,我经历了这个主题的 5 个变体,使用从页面到页面调用到创建新的 defpartials、多方法、defn 的所有内容, ETC。

我使用的来源(不幸的是,我不能将所有这些都列为首次发布者):

这个使用 Clojure -> Korma -> PostgreSQL,但代码似乎不适用于多个用户?
http://www.vijaykiran.com/2012/01/17/web-application-development-with-clojure-part-2/

这个展示了如何使用 Noir 和 PostgreSQL(是的,我正在使用 Noir): https ://yogthos.net:11794/blog/23-Noir+tutorial+-+part+2

4Clojure 站点,但该站点使用的是 CongoMongo:

Heroku Twitter 克隆,但没有提及如何为一个人创建登录名,更不用说为几个人创建登录名了。

我还从 O'Reilly Press 购买了 Programming Clojure,但再一次,没有关于如何创建登录区域的内容。

第一次编辑:我被要求创建一个独立站点的 github 存储库。这包括在welcome.clj 文件中找到的工作“帐户创建”区域和login.clj 中仅一种形式的登录区域。

我试图让一些与昨晚一样的错误正常工作,并在上传文件之前尝试让这个工作正常。我还没有任何合理的起点,因此目前还没有开始实施。我对我提出的解决方案感到非常尴尬,因此我不想发布它们。我从概念上得到了我应该做的事情,但由于某种原因,我似乎无法翻译这个。这是我的第一个github账号:我的背景是Python,Scheme a'la SICP,还有我自己搭建的一些Python+PostgreSQL营销程序。

第二次编辑:确认!我似乎根本无法让它工作......是的,我在这个上花了超过 20 分钟(小时),所以我不得不承认我还没有必要的知识来完成这个,无论我查看多少来源。我提交了更新的文件和我尝试过的所有奇怪的事情,包括登录框的所有变体以运行原始 SQL。我能得到的最接近的方法是得到它,这样我就不会收到任何错误,但根本没有证据表明有人已登录。非常感谢您的帮助和建议。我肯定会稍后再谈。

https://github.com/dt1/noirKormaLogin

0 投票
2 回答
356 浏览

model-view-controller - 无法让 defroutes 在 webnoir 中工作

所以,我是一个 clojure n00b,当我试图为我正在构建的项目获取路线时,我错过了一些东西。

我在循环依赖方面遇到了一些问题,在使用 Django 之后,我认为将路由全部定义在一个地方要好得多,而不是像使用defpage.

上代码:

这是我的core.clj文件:

然后在我的路线文件中,我有以下内容:

一切都是404'ing,我什至不知道从这里去哪里。我可以使用该站点defpage,但随着路由数量的增加,它看起来很丑陋且不可扩展。

所以

  • 我在这里做错了什么?对底层组合/clojure/ring 层的任何洞察都会很棒
  • 如果这不是定义路线的最佳方式,那是什么?
  • github上有大型clj-noir网站的好例子吗?(我的 google-fu 让我失望了。)