Articles of ruby

ExecJS :: ProgramError中的欢迎#索引

在安装了Ruby 2.3.3,Rails 5.0.0.1和NodeJS 4.2.6的Ubuntu 16.04上,我生成了一个带有bin/rails generate controller welcome index的玩具控制器。 在运行bin/rails server ,我在浏览器中打开了http://localhost:3000/welcome/index以获得以下错误: ExecJS::ProgramError in Welcome#index Showing /rails-app-path/app/views/layouts/application.html.erb where line #7 raised: ReferenceError: CoffeeScript is not defined Extracted source (around line #7): <%= csrf_meta_tags %> <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %> <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %> </head>

如何在JavaScript中实现Ruby的扩展模块

在Ruby中,我可以在运行时在对象上扩展一个模块。 我认为JavaScript可以得到的function,但我不能得到它的工作。 Ruby运行正常,对象有test1和test2方法: class Test def test1 puts "test1" end end module Other def test2 puts "test2" end end test = Test.new test.extend(Other) test.test1 test.test2 JavaScript返回一个TypeError:test_new.test2不是一个函数 class Test { test1(){ console.log("test1") } } class Other { test2() { console.log("test2") } } console.log(Object.getOwnPropertyNames( Test.prototype )) console.log(Object.getOwnPropertyNames( Other.prototype )) var test = new Test var test_new = […]

node.js / ruby​​与beanstalkd的集成

这与付款处理的另一个问题有关,这就是我的示例用例,但我正在考虑尝试使用beanstalkd将node.js和ruby集成到同一台服务器上。 基本上,我想使用node.js作为我的主要Web服务器,但是当我需要做一些支付处理时,我想使用像Ruby这样健壮和稳定的东西。 我正在考虑尝试使用beanstalkd作为一种方式,让node.js将支付处理作业排队等待ruby在后台执行。 beanstalkd的文档有点渺茫,所以我很难弄清楚这是一个好方法,还是我怎么去做。 从我可以告诉的,它应该是相当简单的启动一个beanstalkd进程,然后有node.js连接到它发送作业,并有一个Ruby脚本,可以执行作业,并发回结果。

Ruby / node.js + Amazon SES:是否有Amazon SES API?

我已经看到了几个使用亚马逊SES的gem。 但是,我找不到任何由Amazon提供的API来构build没有这个gem的服务。 我怎样才能做什么gem,而不使用gem? 这对我的应用程序非常重要,因为我不断地发送密钥。 谢谢

为什么ruby“要求”不是更精细?

说明性的例子 在文件b.rb中我有以下两个类:狗和猫。 在ruby中,要使用文件b.rb中定义的类Dog,我必须要求b.rb: require 'b' puts Dog.new.bark 但是,即使我不需要Cat,也会定义它,因为所需文件中的所有类都已加载。 这个问题 所以我的问题是:为什么Ruby中没有一种方法只需要文件的一部分? 在Ruby中是不是有必要考虑这个问题,还是将它包含在语言未来的一些路线图中? 在Python中,他们有from module import MyClassforms,它可以让导入文件select要导入,并在module.export世界,他们有module.export ,它可以让导入的文件select要导出。 在我看来,Python和NodeJS在这方面更加灵活。 ruby的select有什么权衡? 附加问题:如何调用python / nodeJS机制( select性导入 ?)?

如何与Hubot运行asynchronousRuby脚本?

我想把我的一个Ruby脚本提供给不是开发人员的团队成员(读“不愿意设置和维护Ruby环境”)。 我们也在团队中使用Hubot 。 到现在为止,我确信你已经猜到了我的问题:“我怎么能写一个可以调用我的Ruby脚本的Hubot脚本(CoffeeScript,也就是JS)? ps:我的脚本需要一段时间才能完成,如果你们有一个关于如何让我的hubot给出一个快速反馈(“我听到你,我要运行你的脚本”)的想法,然后通知我,当脚本是完成(“你的脚本成功完成”),这将是真棒。

为什么这个CoffeeScript比这个Ruby脚本更快?

我正在解决一个问题,要求我find所有在4,000,000以下的所有偶数斐波那契数的总和,我注意到下面的CoffeeScript执行得比下面的Ruby快。 CoffeeScript的 sum = 0 f = (n) -> if n == 0 then return 0 else if n == 1 then return 1 else return f(n-1) + f(n-2) console.log "Starting…" for i in [1..4000000] ff = f(i) break if ff >= 4000000 sum += ff if ff % 2 == 0 console.log ".." + […]

Grunt不执行grunt-contrib-sass任务

我已经使用grunt-contrib-sass插件将Sass任务添加到了我的grunt进程中。 这是我的gruntfile: module.exports = function ( grunt ) { grunt.loadNpmTasks('grunt-contrib-sass'); /** * Load in our build configuration file. */ var userConfig = require( './build.config.js' ); /** * This is the configuration object Grunt uses to give each plugin its * instructions. */ var taskConfig = { /** * We read in our `package.json` file so […]

Node.js或ruby刮

我试图做一个应用程序,需要从多个网站抓取大量的数据。 我尝试使用Ruby来抓取网站,但是像Mechanize这样的gem似乎只能抓取静态页面而不是dynamic内容。 我有几个问题关于哪些这些语言,或任何其他语言,我应该使用这个项目(我正在考虑使用节点,因为应用程序中的相当一些元素必须实时)。 是否有可能使用Ruby和/或节点刮dynamic内容? 如果有的话,应该使用哪些工具? 如果多个用户将要从多个站点抓取,你会推荐使用哪种语言? 在稍微不相关的说明中,是否可以将Node和Rails结合起来? 提前致谢!

命令“grunt server”的罗盘错误

我正在运行一个项目,我安装了nodeJs,ruby,yeoman,compass等。现在我正在用命令>grunt server或>grunt server –force运行我的项目 但它给我指南针的错误。 E:\CRM_workspace\CRM_from_repo\ria>grunt server –force Running "server" task >> The `server` task has been deprecated. Use `grunt serve` to start a server. Running "serve" task Running "clean:server" (clean) task Cleaning .tmp…OK Running "concurrent:server" (concurrent) task Running "copy:styles" (copy) task Done, without errors. Running "compass:server" (compass) task directory .tmp/styles/ create .tmp/styles/main.css (3.069s) Warning: […]