草庐IT

make_more_helpers

全部标签

ruby-on-rails - rails : Model instance method or helper method?

按照惯例,应将以下定义为我的模型的实例方法还是辅助方法?#app/models/user.rbclassUser或#app/helpers/users_helper.rbmoduleUsersHelperdeffull_name"#{@user.first_name}#{@user.last_name}"endend非常感谢。 最佳答案 选择第一个(保留在模型中),也是因为您可能想做其他事情,比如组合索引:) 关于ruby-on-rails-rails:Modelinstancemeth

ruby-on-rails - helper 和 partial 有什么区别?

从功能上来说,两者都像是根据特定参数生成HTML的子程序。在特定情况下使用其中一种的决定是否纯粹出于审美考虑? 最佳答案 Helpers和partials都旨在用于您的View层。不同之处在于助手主要是ruby​​代码,旨在用作从模板调用的方法库。Partials是.html.erb文件,包含可以插入到主模板中的部分模板。所以简而言之,逻辑应该放在助手中,可重用的html片段(具有最少的嵌入式逻辑)应该放在部分中。希望这对您有所帮助! 关于ruby-on-rails-helper和par

ruby - 运行 make install 时出现 RVM 错误。安装 power_assert gem 时出错

我正在尝试在我的arch机器上安装ruby​​2.2.2。当我运行rvminstall时,出现以下错误。试了几次。甚至删除了rvm并重新安装。还是一样的问题。○rvminstall2.2.2Searchingforbinaryrubies,thismighttakesometime.Nobinaryrubiesavailablefor:arch/libc-2.21/x86_64/ruby-2.2.2.Continuingwithcompilation.Pleaseread'rvmhelpmount'togetmoreinformationonbinaryrubies.Checkingr

ruby - 我如何使用 Rspec 在 Sinatra 中测试 helpers block ?

我正在编写一个sinatra应用程序并使用rspec和rack/test对其进行测试(如sinatrarb.com上所述)。到目前为止它一直很棒,直到我将一些相当程序化的代码从我的域对象移动到sinatra助手。从那时起,我就一直在尝试弄清楚如何单独测试这些? 最佳答案 我通过将辅助方法放在它自己的模块中来单独测试我的sinatra辅助方法。由于我的sinatra应用程序比通常的helloworld示例稍大,我需要将它分成更小的部分。通用助手模块非常适合我的用例。如果您编写了一个快速演示,并且在helpers{...}block中定

ruby - Rails current_path helper ?

我正在开发具有以下路由条件的Rails3.2应用程序:scope"(:locale)",locale:/de|en/doresources:categories,only:[:index,:show]get"newest/index",as::newestend我有一个包含以下内容的Controller:classLocaleController我在模板中将它与类似的东西一起使用:=link_toset_locale_path(locale::de,return_to:current_path(locale::de))do=image_tag'de.png',style:'vertic

ruby - 总和(&:x) not working any more

我在我的Rails应用程序(4.1.2)中使用payments.sum(&:price)。自从我从Ruby1.9.3更新到2.1.2后,出现了以下错误:wrongnumberofarguments(1for2..3)这些变体有效:payments.map(&:price).sumpayments.to_a.sum(&:price)我必须重写我的代码还是我遗漏了什么?谢谢! 最佳答案 来自documentation:sum(*args)Calculatesthesumofvaluesonagivencolumn.Thevalueisr

ruby-on-rails - rails helper - 如何让 helper 给我 `<br/>`(或其他标记)

我的助手是这样工作的:defsome_help(in_string)in_string+"andmore"end但我希望它在输出之前对执行操作,并且我一直按字面意思获取字符本身,即不是中断,但我想要的是这就是问题所在。所以defsome_help(in_string)""+in_string+"andmore"end不能正常工作。 最佳答案 使用tag(:br)而不是"".content_tag(:br)创建打开和关闭br标签和使用raw或html_safe只是丑陋(更不用说危险了)。

ruby-on-rails - railstutorial.org 中的 SessionsHelper : Should helpers be general-purpose modules for code not needed in views?

railstutorial.org有一个让我觉得有点奇怪的建议。Itsuggeststhiscode:classApplicationControllerincludeSessionsHelper使方法在ApplicationController中可用,是的,但它也使它们在任何View中都可用。我知道身份验证/授权是交叉的,但这真的是最好的地方吗?在我看来,这可能范围太广了。将实现有条件重定向(如railstutorial.org示例所做的)的before_filter的代码放在更通常包含View助手的模块中似乎令人惊讶。将View中不需要的功能放在ApplicationControl

ruby-on-rails - 使用 Ruby on Rails 和 RSpec 为 helper 编写规范

我一直在为Controller和模型编写规范,但我从未编写过辅助规范。我不知道从哪里开始。我在application_helper.rb中有以下片段deftitle(page_title)content_for(:title){page_title}end我应该如何编写代码的辅助规范?此外,如果有任何开源Rails应用程序可以显示良好的辅助测试/规范,请告诉我。 最佳答案 来自rspec-railsdocsonHelperSpecs:Helperspecsliveinspec/helpers,andmixinActionView::

ruby-on-rails - 覆盖 rails helpers 以访问原始文件

我想使用rails熟悉的助手,但功能略有改变。在我看来,我希望能够做类似的事情:moduleAwesomeHelper#...createaliasofstylesheet_link_tagtoold_stylesheet_link_tagdefstylesheet_link_tag(*args)if@be_awesomeawesome_stylesheet_link_tag*argselseold_stylesheet_link_tag*argsendendend在我看来,我有三个选择:Monkeypatching:重新打开railshelper模块。如果Rails团队更改了他们的辅