jjzjj

ruby - 尝试从 FTP 下载文件导致 "500 Illegal PORT command"错误

如果我在本地执行,一切正常:require'net/ftp'ftp=Net::FTP.new("myftpserver.com","username","password")ftp.getbinaryfile("/myfile.zip","localfile.zip")ftp.close如果我尝试在我使用的Linux服务器上执行它,结果是:/usr/local/lib/ruby/1.9.1/net/ftp.rb:273:in`getresp':500IllegalPORTcommand.(Net::FTPPermError)from/usr/local/lib/ruby/1.9.1/n

ruby-on-rails - 未定义方法 `accept' 为 nil :NilClass on rake db:migrate

使用ruby​​-1.9.2和rails3.2.1。mysql2的版本是0.2.7。运行rakedb:migrate时出现错误:“nil:NilClass的未定义方法‘accept’:”跟踪包括:gems/activerecord-3.2.1/lib/active_record/connection_adapters/abstract/database_statements.rb:7:in`to_sql' 最佳答案 从以下位置更改您的Gemfile:gem'activerecord-mysql2-adapter'到:gem'mysq

ruby - 执行 rake db :migrate on Heroku 时出错

做的时候heroku运行rakedb:migrate所有迁移都已执行,最后我总是收到以下消息:/app/vendor/bundle/ruby/1.9.1/bin/rake:没有这样的文件或目录-pg_dump-i-s-x-O-f/app/db/structure.sqldan79p98fykovu我无法在Heroku上将pg_dump添加到PATH。如何处理? 最佳答案 问题在于,迁移完成后,rails会尝试转储新的structure.sql,但由于pg_dump不存在而失败。为已部署的应用程序生成新的structure.sql毫无

ruby-on-rails - 当我运行 `bundle exec rake test:prepare` 时它出错了,但是 `bundle exec rake db:test:prepare` 运行正常但有警告。这是怎么回事?

所以根据thislink一个是快捷方式包装器(所以我猜它们是一样的)。当我运行bundleexecrakedb:test:prepare时,我得到了这个错误:Don'tknowhowtobuildtask'test:prepare'/Users/aj/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/bin/ruby_executable_hooks:15:in`eval'/Users/aj/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/bin/ruby_executable_hoo

ruby-on-rails - 迁移正在等待;运行 'bin/rake db:migrate RAILS_ENV=development' 来解决这个问题[无法继续]

我似乎有一个关于RubyonRails迁移过程的循环问题。我正在关注介绍文章,我已经到了需要创建我的第一个表的地步。我已经运行了以下,[tims@web2working_ror]#railsgeneratemodelHomepagefirst_name:stringlast_name:stringemail:stringmessage:textinvokeactive_recordcreatedb/migrate/20131119203948_create_homepages.rbcreateapp/models/homepage.rbinvoketest_unitcreatetest

ruby-on-rails - 运行 rake db :migrate 时,Rails 创建迁移以将列添加到表中会导致错误

我创建了一个名为“用户”的模型,我创建了一个新的迁移以将一些列添加到用户表中。现在,当我运行rakedb:migrate时,我得到以下b/c错误,它正在尝试再次创建用户表$rakedb:migrate==DeviseCreateUsers:migrating==============================================--create_table(:users)rakeaborted!Anerrorhasoccurred,alllatermigrationscanceled:Mysql::Error:Table'users'alreadyexists:CR

ruby-on-rails - 在 rake db :create 期间无法将 fixnum 转换为字符串

刚刚使用Rails3.0创建了一个新的博客应用我的模型很简单:classPost我使用了命令:railsgeneratescaffoldposttitle:stringbody:textetc.创建这些文件。现在我想使用以下方法生成数据库:rake数据库:创建我得到了错误:rakeaborted!can'tconvertFixnumintoString知道问题是什么吗?我正在学习本教程:http://sixrevisions.com/web-development/how-to-create-a-blog-from-scratch-using-ruby-on-rails/这是痕迹:**

ruby-on-rails - 附加到 rake db :seed in rails and running it without duplicating data

Rakedb:seed使用应用程序的默认数据库值填充您的数据库,对吗?那么如果您已经有一个种子并且需要添加到它(您添加一个需要种子的新功能)怎么办?根据我的经验,当我再次运行rakedb:seed时,它已经添加了现有内容,因此现有内容变成了两倍。我需要的是添加一些种子,当运行时,它应该只添加最新的种子,而忽略现有的种子。我该怎么做?(我通常采用的肮脏的、菜鸟的方式是截断我的整个数据库然后再次运行种子,但这在生产中不是很聪明,对吧?) 最佳答案 更简洁的方法是使用find_or_create_by,如下所示:User.find_or_

ruby - 导轨 4 : Append to a "has_many" relation without saving to DB

在Rails3中,可以做类似some_post.comments.append(some_comment)的事情其中一些帖子是“有很多”评论的模型实例。我在Rails4中面临的问题是append方法现在保存到数据库(如push和),我只需要“附加”而不将附加的对象保存到数据库。我们如何在Rails4中实现这一点?我不能使用some_post.comments.build(some_comment.attributes)因为我需要保留some_comment中已经存在的其他关系实例。 最佳答案 在Rails中优雅地做到这一点非常困难。

ruby-on-rails - rails : Postgres permission denied to create database on rake db:create:all

我正在尝试创建用于开发和测试的postgres数据库。我正在使用:OSX优胜美地Rails版本:4.2.0git版本:2.2.2psql版本:9.4.0ruby版本:2.1.0p0自制软件版本:0.9.5gem文件:gem'pg'数据库.yml:default:&defaultadapter:postgresqlencoding:unicodepool:5development:rakedb:create:all返回PG::InsufficientPrivilege:ERROR:permissiondeniedtocreatedatabase:CREATEDATABASE"myapp_