问题标签 [ruby-on-rails-2]
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.
ruby-on-rails - 在 Rails 2.3.8 中处理本地化名称空间路由的正确方法是什么?
我正在本地化我的应用程序,并且正在努力处理如何处理应用程序特定部分的路由。
最初我的路线看起来像这样:
从我在其他路线上成功完成的工作中,我需要添加::path_prefix => '/:locale/'
到这些路线。
我遇到的唯一示例如下所示:
这实际上看起来对路由很有用,但是,它搞砸了我生成的一些 URL。
例如,以前我有类似的东西= link_to(t('subscription'), edit_admin_subscription_path(subscription_id)
工作得很好......在上述更改后,此 url 不再正确生成,出现以下错误:
我真诚地感谢任何人对处理此类事情的正确方法和/或为什么这个网址不再喜欢生成的任何见解。谢谢!
ruby-on-rails - ActiveRecord 如何在验证中实现 `:if => ...`
我一直在查看 ActiveRecord 源以了解:if => proc_or_method_name
ActiveRecord 验证的工作原理,但源中唯一的实例:if
是在解释如何调用该功能的注释中。
例如,您可以在模型中有如下一行:
nameable?
并且只有在方法返回给定模型的真实值时才会检查验证。
这个功能实际定义在哪里,因为我在(Rails2)源中的任何地方都找不到这种行为?
sql - 如何从rails 2中的活动记录打印正在执行的sql
我想打印到日志或控制台正在执行的 sql。我在哪里可以进行一些设置?在休眠状态下,它可能存在于配置文件中:我认为这里也应该是这样的。
我有一个与此类似的代码部分:
这是一个更简单的手动翻译案例,但我希望将所有本机 sql 都放在控制台或文件中。它在搜索时可能很有用
ruby-on-rails - Rails 2 创建方法并保存父级
我正在将 Rails 1 应用程序升级到 2.3,并且遇到如下代码块问题:
这在 Rails 1 中运行良好。升级后,调用此create
方法会产生:
create
Rails 1 和 2 之间的方法是如何变化的,现在处理这个问题的正确方法是什么?
ruby-on-rails - 如何让 ruby 控制台识别控制器和模型中的代码更改
我正在为我的 ruby 模型添加新功能,并通过 ruby 控制台对其进行测试。我发现每次更改模型中的任何内容时都必须重新启动控制台非常烦人。有没有办法让 ruby 控制台不缓存或让它检查更新的代码而不重新启动它?
例如,我正在模型中创建一个新方法,并且在进行更改后,我必须重新启动控制台并运行一些命令来重新加载所有内容。见下文:
如果我从区域模型中更改 high_x 方法中的一行,我必须重复所有步骤才能看到我的更改。
ruby-on-rails - 带有不同版本的 Rails 的 Rails 插件
我有一个 rails 3 应用程序,我想使用一个需要 rails_generator 的插件,该插件在 rails 3 中不再可用。我可以让插件与 Rails 2 一起运行,而我的应用程序与 Rails 3 一起运行吗?
编辑:我在 IRC (#rubyonrails) 上问过,答案是否定的 :(
ssl - 为 Rails 2 中的所有页面设置 ssl_allowed/ssl_required?
我发现当页面使用 SSL/HTTPS 时,AJAX 调用在我的 Rails 站点上不起作用。我通过添加来解决这个问题
到涉及的控制器。
我预见到这会很痛苦并且将来容易出现错误,因为我无疑会忘记将操作添加到 ssl_allowed 列表中。
有没有办法在 [ssl_requirement][1] gem 中为我的站点中每个控制器的所有操作打开ssl_allowed
/全局?ssl_required
我尝试将以下内容添加到 ApplicationController,但这不起作用:
ruby-on-rails - Rails 2:当 id 1 不存在时,Model.find(1) 给出 ActiveRecord 错误
我正在使用 Rails 2.3.5,如果我给出Model.find(1)
并且 1 不在数据库中,它会返回 ActiveRecord 错误。它应该nil
像 的情况一样返回Model.find_by_column('..')
吗?
ruby-on-rails - 如何使用 link_to 以便将传递给控制器的所有参数保留在 Ruby on Rails 2 中?
我有一个双语网站,有很好的 SEO 网址。使用 Ruby on Rails 2.3.10。
routes.rb
分段:
如您所见,:locale
并且:greenhopper
被“隐藏”在 URL 中。
有一个开关,您可以更改当前页面的语言。见我的views/layouts/default.erb
:
我只是没有指定控制器和操作,因此我被重定向到具有不同语言环境的当前控制器和操作。不幸的是, :greenhopper 参数丢失了。
- 我在
/order-jira-with-greenhopper-hosting/11.html
(:option => 11, :locale => 'en', :greenhopper => true
) - 用于切换语言的生成链接是
/order-jira-hosting/11.html
和/zamow-hosting-jira/11.html
(:option => 11, :locale => 'pl' and 'en', :greenhopper => false)
... - ...但他们应该是
/order-jira-with-greenhopper-hosting/11.html
并且/zamow-hosting-jira-z-greenhopper/11.html
(:option => 11, :locale => 'pl' and 'en', :greenhopper => true)
如何使用 link_to 方法以保留传递给控制器的所有参数?谢谢你的帮助。
ruby-on-rails - ActiveRecord Count 用于计算 Rails 中 group by 返回的行数
我环顾四周,找不到任何答案。所有答案都涉及未使用 GROUP BY 的计数。
背景: 我有一个分页器,它将为 ActiveRecord.find 提供选项。它添加了一个 :limit 和 :offset 选项并执行查询。我还需要计算记录的总数(减去限制),但有时查询包含一个 :group 选项,并且 ActiveRecord.count 尝试返回 GROUP BY 返回的所有行及其每个计数。我在 Rails 2.3.5 中这样做。
我想要的是 ActiveRecord.count 返回 GROUP BY 返回的行数。
下面是一些示例代码,演示了其中的一个实例(用于查找所有标签并按带有该标签的帖子数量对它们进行排序):
使用 :select 选项,Tag.count 生成以下 SQL:
正如你所看到的,它只是在'tags.*, COUNT(*)' 周围包裹了一个 COUNT(),而 MySQL 抱怨 COUNT 中的 COUNT。
如果没有 :select 选项,它会生成以下 SQL:
它返回整个 GROUP BY 结果集而不是行数。
有没有办法解决这个问题,或者我是否必须破解分页器来解释使用 GROUP BYs 的查询(我将如何去做)?