小编Ben*_*use的帖子

ruby中的常量或类变量?

我已经在Ruby中编程了几个月了,我想知道什么时候使用常量而不是类变量,反之亦然.(我在Rails工作,考虑模型中的常量).

class Category
  TYPES = %w(listing event business).freeze
end
Run Code Online (Sandbox Code Playgroud)

要么

class Category
  @@types = %w(listing event business).freeze
  cattr_reader :types
end
Run Code Online (Sandbox Code Playgroud)

是否存在一种优于另一种情况的情况?或者只是品味/风格问题?

ruby constants class-variables

48
推荐指数
3
解决办法
2万
查看次数

如何从表单中删除jQuery验证?

我正在使用jQuery验证插件来验证表单,如果单击某个链接,我想删除验证并提交表单.

我用javascript提交表单jQuery('form#listing').submit(),所以我必须用javascript 删除验证规则/功能.

问题是我无法弄清楚如何做到这一点.我已经试过之类的东西jQuery('form#listing').validate({});jQuery('form#listing').validate = null,但没有运气.

javascript validation jquery

39
推荐指数
8
解决办法
7万
查看次数

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

14
推荐指数
3
解决办法
5690
查看次数

是否有任何示例Rails应用程序,其中业务逻辑保存在与ActiveRecord不同的类中?

最近,Ruby社区发布了博客文章,推文以及关于使用更好的OO设计的好处的评论,特别是将业务逻辑与持久性逻辑分离.特别是对于较大的应用,我认为这是一个很好的建议.

我有兴趣找到一个完整的示例Rails应用程序,其中业务逻辑与ORM(ActiveRecord或其他)完全分离.具体来说,我很有兴趣看到如何处理数据库约束,业务规则验证,参数清理,服务类等.

有人知道像这样的开源应用吗?

ruby architecture domain-driven-design model ruby-on-rails

14
推荐指数
1
解决办法
2293
查看次数

如何以编程方式将args传递给Ruby?

如何将可变数量的args传递给yield.我不想传递一个数组(如下面的代码那样),我实际上想将它们作为程序化数量的args传递给块.

def each_with_attributes(attributes, &block)
  results[:matches].each_with_index do |match, index|
    yield self[index], attributes.collect { |attribute| (match[:attributes][attribute] || match[:attributes]["@#{attribute}"]) }
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby

11
推荐指数
1
解决办法
3988
查看次数

与发送JSON和构建HTML相比,它在AJAX中发送HTML有多危险?

可能重复:
为什么返回生成的HTML而不是JSON是一种不好的做法?或者是吗?

在我看来,任何拦截都可以提供即时的麻烦,因为任何人都可以将任何HTML /脚本发送回客户端.

我有兴趣这样做的唯一原因是,每当有一个DOM结构/ CSS更改时,前端开发人员面临巨大的痛苦,所以你现在必须弄清楚你在Javascript HTML构建过程中的位置更新.

你们怎么处理这个?有什么我可以做的事情来减少任何风险或者只是直接的坏主意吗?

html javascript security ajax json

11
推荐指数
1
解决办法
8503
查看次数

有没有好的参考(开源)Rails NoSQL应用程序?

我很想知道使用NoSQL会如何影响Rails应用程序的体系结构/设计/代码.

有没有人知道使用NoSQL持久性的开源Rails应用程序的一个很好的例子?

谢谢

ruby database open-source ruby-on-rails nosql

8
推荐指数
0
解决办法
2979
查看次数

在Rails中动态重新加载路由是一个坏主意吗?

我有一个应用程序,我正在编写,我允许管理员为页面,类别等添加别名,我想使用不同的控制器/操作取决于别名(没有重定向,我发现渲染实际上并没有调用方法.我只是渲染模板).我已尝试捕获所有路由,但我并不是因为导致并捕获每次都抛出的DoubleRender异常而感到疯狂.

我提出的解决方案是在服务器启动时动态生成的路由,并在创建/更新/销毁别名时使用Alias模型的回调来重新加载路由.这是我的routes.rb中的代码:

Alias.find(:all).each do |alias_to_add|
    map.connect alias_to_add.name, 
            :controller => alias_to_add.page_type.controller, 
            :action => alias_to_add.page_type.action,
            :navigation_node_id => alias_to_add.navigation_node.id
end
Run Code Online (Sandbox Code Playgroud)

我在Alias模型中使用回调如下:

after_save :rebuild_routes
after_destroy :rebuild_routes

def rebuild_routes
    ActionController::Routing::Routes.reload!
end
Run Code Online (Sandbox Code Playgroud)

这是针对Rails的最佳做法吗?有更好的解决方案吗?

ruby ruby-on-rails

7
推荐指数
2
解决办法
5200
查看次数

为什么我的Rails服务器渲染时间不加起来?

我的登台服务器上的Rails应用程序速度非常慢,我遇到了一些麻烦.最令人困惑的是每个请求的日志输出的最后一行.

看来,View和Database时间甚至都不接近整个渲染时间.在一个页面上,完成时约为1000毫秒,视图约为450毫秒,约20毫秒数据库.

呈现页面所需的其余时间从何而来?

ruby performance ruby-on-rails

6
推荐指数
1
解决办法
1355
查看次数