草庐IT

QT编程

全部标签

Ruby 元编程在线教程

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭9年前。Improvethisquestion我刚刚开始学习Ruby,并且对基础知识有了很好的了解。我一直听说Ruby做得很好的很酷的事情之一是元编程,但我读过的教程都没有涵盖这一点。在Google上搜索,我似乎只能找到付费的ruby​​元编程屏幕截图。那么,我在哪里可以找到好的在

ruby - 如何以编程方式生成类似 Heroku 的子域名?

我们都见过有趣的子域,当您使用简单的“herokucreate”将应用程序部署到Heroku时,这些子域会自动分配给您。一些示例:blazing-mist-4652、electric-night-4641、morning-frost-5543、radiant-river-7322等。它们似乎都遵循形容词-名词-4位数字的模式(大部分)。他们是不是简单地输入了一些形容词和名词的字典,然后在你推送应用程序时随机选择它们的组合?是否有Rubygem可以完成此任务,也许提供了一个可以按词性搜索的字典,或者这是需要手动完成的事情吗? 最佳答案

ruby - 是否有教程教授经验丰富的程序员使用的常见 Ruby 编程习语,但对新手来说可能并不明显?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我正在寻找Ruby的CodeLikeaPythonista:IdiomaticPython等价物理想的特性:易于阅读涵盖所有主题的单一文档:提示、技巧、指南、注意事项和陷阱比一本书还小惯用语应该在标准发行版中开箱即用(%sudoapt-getinstallruby​​irbrdoc)请尽可能为每个答案放一个教程,并附上教程中的示例代码及其含义。更新:这些

ruby-on-rails - 编程语言是 "on rails"是什么意思?

我目前正在使用Groovy和Grails。虽然Groovy非常简单,因为它基本上是Java,但我不能说我理解Grails。我读到Groovy之于Grails就像Ruby之于RubyonRails,但这意味着什么? 最佳答案 为了解决您对隐喻的困惑(尽管已在您的问题下以其他方式回答):GroovyistoGrailsasRubyistoRubyonRails,butwhatdoesthatmean?Grails是一个基于/使用Groovy编程语言构建的Web框架,可以为Groovy做与Rails(Ruby的Web框架)为Ruby做的相

ruby - 有人尝试过 Crystal 编程语言(机器代码编译的 Ruby)吗?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭6年前。Improvethisquestion和许多其他人一样,我始终坚信“Ruby永远不会存在纯编译器,因为该语言对于静态编译器来说过于动态,无法工作。”但我最近偶然发现了这些:TheCrystalprogramminglanguageatGitHubStaticallycompiledRuby这两个项目看起来都很有趣。它们可以为我们提供原生编译语言的速度(以及通常是商业需求的编译语言的混淆代码),同时保留Ruby的所有(或大部分)

ruby - 以编程方式获取完整的 Ruby 版本?

我知道可以通过RUBY_VERSION常量获取Ruby版本(例如“1.9.3”)。但是,我想知道如何确定确切的版本(例如:“1.9.3-p0”)。原因是有一个错误在早期版本的Ruby1.9.3中没有修复,但在以后的版本中有效,我想在我正在处理的gem中添加一些代码来解决这个问题。 最佳答案 还有一个RUBY_PATCHLEVEL常量。所以你可以得到你的版本字符串作为"#{RUBY_VERSION}-p#{RUBY_PATCHLEVEL}" 关于ruby-以编程方式获取完整的Ruby版本?

ruby-on-rails - 如何在 Ruby on Rails 中以编程方式查找命名空间/模块名称?

如何在下面的过滤器中找到namespace或模块“Foo”的名称?classApplicationController 最佳答案 这些解决方案都没有考虑具有多个父模块的常量。例如:A::B::C从Rails3.2.x开始,您可以简单地:"A::B::C".deconstantize#=>"A::B"从Rails3.1.x开始,您可以:constant_name="A::B::C"constant_name.gsub("::#{constant_name.demodulize}",'')这是因为#demodulize与#deconst

ruby-on-rails - 如何使用 Paperclip 以编程方式设置文件上传

我有一个rake任务,使用fakergem为应用程序播种随机数据。但是,我们也有要在此rake任务中上传的图像(如Logo)。我们已经设置了Paperclip,但无法在rake任务中以编程方式上传它们。有什么想法吗? 最佳答案 程序化是什么意思?您可以设置一个方法,该方法将采用以下行的文件路径my_model_instance=MyModel.newfile=File.open(file_path)my_model_instance.attachment=filefile.closemy_model_instance.save!#a

Ruby 元编程 : dynamic instance variable names

假设我有以下哈希:{:foo=>'bar',:baz=>'qux'}我如何动态设置键和值以成为对象中的实例变量...classExampledefinitialize(hash)...magichappenshere...endend...这样我就可以在模型中得到以下内容...@foo='bar'@baz='qux'? 最佳答案 您要找的方法是instance_variable_set.所以:hash.each{|name,value|instance_variable_set(name,value)}或者,更简单地说,hash.e

javascript - 在 react-router 2 中以编程方式重定向到页面

我正在使用react-router-2。我想在成功登录后或执行某些操作后以编程方式重定向到页面。我的路由文件是这样的(routes.js)onEnter钩子(Hook)functionredirectToLogin(nextState,replace){//Performsomeauthenticationcheckif(!loggedIn){replace({pathname:'/login',state:{nextPathname:nextState.location.pathname}});}}functionredirectToDashboard(nextState,repla