Questions tagged «ruby-on-rails»

Ruby on Rails是一个用Ruby编写的开源全栈Web应用程序框架。它遵循流行的MVC框架模型,并以其“配置之上的约定”方法进行应用程序开发而闻名。

6
Rails:发出POST请求时无法验证CSRF令牌的真实性
我想对POST request本地开发人员进行这样的操作: HTTParty.post('http://localhost:3000/fetch_heroku', :body => {:type => 'product'},) 但是,它会从服务器控制台报告 Started POST "/fetch_heroku" for 127.0.0.1 at 2016-02-03 23:33:39 +0800 ActiveRecord::SchemaMigration Load (0.0ms) SELECT "schema_migrations".* FROM "schema_migrations" Processing by AdminController#fetch_heroku as */* Parameters: {"type"=>"product"} Can't verify CSRF token authenticity Completed 422 Unprocessable Entity in 1ms 这是我的控制器和路由设置,非常简单。 def fetch_heroku if params[:type] == 'product' …

11
未捕获ReferenceError:未定义React
我正在尝试使用本教程使ReactJS与rails一起使用。我收到此错误: Uncaught ReferenceError: React is not defined 但我可以访问浏览器控制台中的物体做出反应 我还添加了公共/距离/涡轮react.min.js描述这里,也加入如描述的application.js线在这个答案没有运气。此外,给出错误://= require components var React = require('react') Uncaught ReferenceError: require is not defined 谁能建议我解决这个问题? [EDIT 1] 供参考的源代码: 这是我的comments.js.jsx文件: var Comment = React.createClass({ render: function () { return ( <div className="comment"> <h2 className="commentAuthor"> {this.props.author} </h2> {this.props.comment} </div> ); } }); var ready = …

8
由于readline错误导致无法执行“ rails console”
rails console由于此错误,我无法执行: localhost:TwitterForZombies wiz$ rails c /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/irb/completion.rb:9:in `require': dlopen(/Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin12.2.1/readline.bundle, 9): Library not loaded: /usr/local/opt/readline/lib/libreadline.6.2.dylib (LoadError) Referenced from: /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin12.2.1/readline.bundle Reason: image not found - /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin12.2.1/readline.bundle from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/irb/completion.rb:9:in `<top (required)>' from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands/console.rb:3:in `require' from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands/console.rb:3:in `<top (required)>' from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:38:in `require' from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:38:in `<top (required)>' from script/rails:6:in `require' from script/rails:6:in `<main>' 我已经通过自制软件安装了readline。我想继续使用rbenv而不是rvm。 感谢您阅读我的问题。

12
Webrick的反应非常慢。如何加快速度?
我有一个正在服务器上运行的Rails应用程序。当我进入远程桌面并尝试加载应用程序时,服务器会花费3-4分钟的时间来响应简单的HTML页面。但是,当我在服务器上本地加载页面时,该页面仅会显示一秒钟。我尝试从远程桌面ping服务器,并且在合理的时间内ping操作成功。 在我安装了Oracle的基本客户端和SQLPLUS之后,这一切似乎已经开始。我应该怀疑甲骨文吗?有没有人经历过类似的事情?


8
护栏束清洁
更新捆绑软件后,您将拥有一些可能已过时的gem-因为已安装了该gem的较新版本。bundle可执行文件下没有这样的命令bundle clean。人们如何摆脱这些过时的宝石? 这是尝试减少我的rails应用程序中的块大小。

2
spec / rails_helper.rb与spec / spec_helper.rb有何不同?我需要吗?
我第二次在做Rails教程。当我输入这个 rails generate integration_test static_pages 我得到了spec/rails_helper.rb,spec/spec_helper.rb而不仅仅是spec/spec_helper.rb 现在,当我运行测试时,它们比上次执行时更长(更“冗长”)并且更慢。我想知道两个文件之间的区别是什么,以及我做错了什么。另外,有没有一种方法可以摆脱rails_helper.rb文件而又不会弄乱一切?

3
ActiveRecord查找并仅返回选定的列
编辑2 如果您偶然发现此问题,请同时检查两个答案,因为我现在会为此使用pluck 我有一个相当大的自定义数据集,我想返回它作为json回显。一部分是: l=Location.find(row.id) tmp[row.id]=l 但我想做这样的事情: l=Location.find(row.id).select("name, website, city") tmp[row.id]=l 但这似乎不起作用。我将如何使其工作? 谢谢 编辑1 或者,是否可以传递仅包含要包含的属性的数组?

3
如何从IRB运行.rb文件?
我从Ruby on Rails开始。我目前正在阅读一个教程,其中说我必须从IRB运行.rb文件,这将在当前目录中创建.xml文件。 我的问题是如何在IRB中运行.rb文件? 在IRB中运行该.rb文件时,我是否必须位于该目录中? 我尝试了以下操作:仅irb在文件目录中的命令行上键入。据我了解,这开始了IRB会议。 然后,我键入irb "filename.rb"了经历的内容,但没有在当前目录中创建任何内容,但至少没有出现任何错误。 我还尝试了很多其他东西,这些东西给我带来了错误。因此,我认为我自己无法解决此问题,因此使用Google搜索这个问题根本没有帮助。 我正在运行豹。

9
如何更改Rails 4.2开发服务器的默认绑定IP?
如发行说明所述,在将我们团队的rails应用程序升级到4.2之后,默认的ip rails serverbinds更改为localhostfrom 0.0.0.0。 我们使用Vagrant进行开发,并希望可以直接从主机上的浏览器访问开发服务器。 rails s -b 0.0.0.0我想知道是否还有其他更优雅的解决方案,而不是从现在开始每次输入,因此我们仍然可以像rails s启动服务器一样简单地使用sth 。也许: 一个配置文件rails s读取我可以在其中修改默认绑定ip的地方(不使用-c) 带有无业游民的端口转发(尝试但失败,请参阅下面遇到的问题) 一个要安装的猴子补丁,它将更改默认的绑定IP 这背后的真正目的是我希望我们的团队能够顺利进行升级,避免由于缺少-b 0.0.0.0部件而导致人们不得不不断重启Rails服务器的故障。 我尝试了无用的端口转发,但是在主机上Connection Refused访问时仍然可以使用localhost:3000。我尝试的两条配置行是: config.vm.network "forwarded_port", guest: 3000, host: 3000 config.vm.network "forwarded_port", guest: 3000, guest_ip: '127.0.0.1', host: 3000 在官方文档中找不到任何相关说明。任何帮助将不胜感激。

5
警告:常量:: Fixnum已过时,当生成新模型时
我已经尝试找到一些解决方案,但是我确实找不到与运行rails命令时出现的错误相关的任何信息: Rails生成模型书籍标题:字符串摘要:文本isbn:string /home/vmu/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/activesupport-5.0.1/lib/active_support/xml_mini.rb:51: warning: constant ::Fixnum is deprecated /home/vmu/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/activesupport-5.0.1/lib/active_support/xml_mini.rb:52: warning: constant ::Bignum is deprecated /home/vmu/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/activesupport-5.0.1/lib/active_support/core_ext/numeric/conversions.rb:138: warning: constant ::Fixnum is deprecated Running via Spring preloader in process 3579 Expected string default value for '--jbuilder'; got true (boolean) invoke active_record identical db/migrate/20170104114702_create_books.rb identical app/models/book.rb invoke test_unit identical test/models/book_test.rb identical test/fixtures/books.yml 有人知道是什么原因导致这些错误吗?


3
如何在Rails 4中为控制器或操作覆盖X-Frame-Options
Rails 4似乎SAMEORIGIN为X-Frame-OptionsHTTP响应标头设置了默认值。这对于提高安全性非常有用,但是不允许您的应用程序的某些部分iframe在其他域中可用。 您可以X-Frame-Options使用以下config.action_dispatch.default_headers设置覆盖全局值: config.action_dispatch.default_headers['X-Frame-Options'] = "ALLOW-FROM https://apps.facebook.com" 但是,如何仅针对单个控制器或操作覆盖它呢?

5
我可以在Rails中设置级联删除吗?
我知道这可能在Internet上的某个地方,但是我在Stackoverflow上找不到答案,所以我想我可能会在这里增加一些知识库。 我是Ruby和Rails的新手,但是我的公司已经对其进行了相当多的投资,因此我试图更详细地了解它。 我很难改变思维方式,从“模型”而不是从数据库设计应用程序,因此我试图弄清如何在数据库中经典地完成所有设计工作。 Rails模型代替。 因此,我给自己的最新任务是弄清楚如何配置Rails数据库模型以进行级联删除?有一个简单的方法吗?还是我必须进入MySql并进行设置?

4
在Ruby on Rails中使用破折号`-`而不是下划线`_`进行路由
我希望自己的网址使用破折号-而不是下划线_作为单词分隔符。例如controller/my-action代替controller/my_action。 我对两件事感到惊讶: Google等。继续区分它们。 Ruby on Rails没有一个简单的全局配置参数可以映射-到_路由中。还是呢? 我最好的解决方案是使用:as或命名路由。 我的想法是修改Rails路由以检查该全局配置,并在分派到控制器操作之前更改-为_。 有没有更好的办法?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.