小编mae*_*ics的帖子

可以通过Grails控制器选择布局吗?

我正在构建一个CMS作为Grails的学习练习,并希望内容管理员能够在不同的HTML页面结构之间进行选择(例如2列,3列等).

Grails Layouts看起来像是一个合理的选择,但Grails控制器是否可以明确指出将用于渲染的布局?理想情况下,根据Ruby on Rails layout,该render方法有一个选项,但我没有看到类似的东西.

似乎可以applyLayout通过传递布局的名称来使用该方法,但这需要每个GSP页面显式请求布局(令人讨厌的每页开销),而不是使用按约定的布局.

有任何想法吗?

grails layout

5
推荐指数
2
解决办法
2762
查看次数

以秒精度计时用户任务

我正在构建一个网站,我需要对用户的任务进行计时,向他们展示时间,并跟踪他们完成任务需要多长时间.计时器应该精确到秒,整个任务应该需要大约3-4小时.
我还应该阻止用户伪造完成时间(没有涉及金钱,所以它不是真正的高风险,但存在一些风险).

目前我使用时间戳来跟踪用户何时开始,同时初始化基于JS的计时器,当用户完成我收到通知时,我计算当前时间和开始时间戳之间的差异 - 这种方法不好,用户的计时器和我的时差之间有几秒的差异(即我计算的时间花了用户完成任务,请注意:这只是在我的开发环境中测试过,因为我没有还有其他的环境......).
我考虑的另外两种方法是:
1.完全依赖客户端计时器(即JS),当用户完成任务时 - 发送加密时间(这样用户无法伪造开始时间).这似乎不太实际,因为我无法找到一种在客户端生成秘密密钥的方法,这将真正是"秘密".
2.完全依赖服务器端计时器,每秒发送"滴答".与其他两种方法相比,这似乎是很多服务器端工作(机器,而不是人类......例如,为每个"tick"访问数据库以获得开始时间),而且我也不确定它是否完全准确.

编辑:
这是算法措辞中现在发生的事情:

  1. 用户启动任务 - 服务器向用户发送任务ID并在db记录开始时间,初始化客户端计时器.
  2. 用户完成任务,他的计时器正在运行...
  3. 用户结束任务,停止计时器,并将用户的答案和任务ID发送到服务器.
  4. 服务器检索开始时间(使用收到的任务ID)并计算用户完成任务所需的时间.

问题 - 服务器计算的时间,客户端显示的时间不同.

任何见解都将非常感激.

synchronization client-server timer server-side client-side

5
推荐指数
1
解决办法
397
查看次数

找到子对象的最大值

在javascript中查找子对象的最大值的优雅方法是什么?

例:

找到此对象的最大数量值(此处显示为json):

{"density":[
  {"price":1.22837, "quantity":48201},
  {"price":1.39837, "quantity":28201},
  {"price":1.40107, "quantity":127011},
  {"price":1.5174,  "quantity":75221},
  {"price":1.60600, "quantity":53271}
]}
Run Code Online (Sandbox Code Playgroud)

谢谢你的建议!

PS:只是为了澄清:当然我可以循环,但我认为会有更优雅的方式......

javascript json max

5
推荐指数
1
解决办法
4296
查看次数

JS中的对象文字符号差异

JavaScript如何处理以下两个声明之间有区别吗?

var foo = {
    foo : true,
    bar : 1
};

var foo2 = {
    "foo" : true,
    "bar" : 1
};
Run Code Online (Sandbox Code Playgroud)

JavaScript似乎对待它们是一样的.如果它们真的相同那么,是否有"正确"或首选方式来声明这一点?

javascript coding-style

5
推荐指数
1
解决办法
67
查看次数

Gin 通配符路线与现有子路线冲突

我想建立一个gin服务于以下路线的程序:

r.GET("/special", ... // Serves a special resource.
r.Any("/*", ...       // Serves a default resource.
Run Code Online (Sandbox Code Playgroud)

然而,这样的程序在运行时会出现恐慌:

r.GET("/special", ... // Serves a special resource.
r.Any("/*", ...       // Serves a default resource.
Run Code Online (Sandbox Code Playgroud)

是否可以创建一个 gin 程序,为每个路由提供默认资源,除了服务于不同资源的单个路由之外?

网络上的许多页面让我相信使用默认的 gin 路由器是不可能的,那么从 gin 程序提供这些路由的最简单方法是什么?

web-services go go-gin

5
推荐指数
1
解决办法
2万
查看次数

如何在TFS中查看本地工作副本的更改?

我是一位经验丰富的SVN用户,习惯于在新的客户端网站上使用TFS.我已经调整到新工具的主要问题是 - 如何获取工作副本中已从当前/最新服务器版本更改的所有文件的列表,包括添加或删除的文件?

基本上,我正在寻找TFS相当于一个" svn diff"." TF"命令行工具有一个"diff"命令,用于报告已更改的文件,但我找不到报告已删除或添加的文件的选项; 这个缺失的功能导致了几个签到(令人尴尬)打破了构建.

diff tfs

4
推荐指数
1
解决办法
5713
查看次数

Perl IO :: Socket :: INET混淆"无效参数"错误

考虑以下Perl脚本片段:

use IO::Socket;
# ...
my $sock = IO::Socket::INET->new(
    PeerAddr => $host, # e.g. "google.com"
    PeerPort => $port, # e.g. 80
    Proto => 'tcp'
);
die("no socket: $!") unless $sock;
# ...
Run Code Online (Sandbox Code Playgroud)

在正常情况下,一切都按预期工作,但是当主机系统的互联网连接处于非活动状态时,"sock"变量为空并且$!显示消息"无效参数".

我不恰当地使用INET构造函数还是预期的行为?如果是后者,有没有办法区分"网络接口不活动"错误和构造函数方法的真正无效参数?

sockets perl invalid-argument inet

4
推荐指数
1
解决办法
3316
查看次数

十六进制到javascript中的字符串

我如何转换:from:' \\x3c'to:' <';

我试过了:

s=eval(s.replace("\\\\", "")); 
Run Code Online (Sandbox Code Playgroud)

不起作用.我是怎么做到的 提前致谢!

javascript hex

4
推荐指数
1
解决办法
1万
查看次数

Rails 3视图中是否可以接受查询?

我对MVC的理解是SQL(或任何与持久性相关的)查询应该只在Model/Controller对象中执行.因此,有关控制器Rails 3文档指出:

[控制器]使模型数据可供视图使用,以便它可以向用户显示该数据.

但是,该文档还提供了在View(HTML帮助程序)代码中直接使用查询的示例:

select("post", "person_id", Person.all.collect {|p| [ p.name, p.id ] })
# Note the model query -----^
Run Code Online (Sandbox Code Playgroud)

在Rails 3中,通常可以在Views中执行查询,还是有一个令人信服的理由将这些查询严格委托给Model或Controller对象?文档只是说明性的还是最佳实践的例证?

model-view-controller ruby-on-rails ruby-on-rails-3

4
推荐指数
1
解决办法
2446
查看次数

Node Mongo Native - 如何判断游标何时耗尽?

node-mongo-native collection.find()函数的文档说它创建了一个光标对象,它懒惰地返回匹配的文档.此外:

游标的基本操作是nextObject从数据库中提取下一个匹配文档的方法.方便的方法eachtoArray调用,nextObject直到光标用尽.

不幸的是,文档没有提供如何判断光标实际耗尽的指示.您可以使用"toArray"方法并使用标准数组接口(例如"长度"方法),但此解决方案不适合流式传输大量数据.MongoDB API Wiki引用cursor.hasNext()了mongo shell,但是这个方法似乎在node.js驱动程序中不可用.

在node.js中从MongoDB流式传输数据时,如何确定光标何时耗尽?

cursor mongodb node.js node-mongodb-native

4
推荐指数
1
解决办法
3416
查看次数