Tag: sqlite3

Heroku:推送拒绝,无法编译Ruby应用程序

我被困了一个星期试图解决这个问题。 我目前一直在关注在线讲座,但是我完全遵循了所有内容,而且讲师并没有任何帮助。 每当我尝试推送到heroku时,我会收到以下信息: 初始化存储库,完成。 计数对象:85,完成。 Delta压缩最多使用2个线程。 压缩对象:100%(76/76),完成。 书写对象:100%(85/85),27.36 KiB,完成。 总计85(delta 6),重复使用0(delta 0) —–> Ruby app detected —–> Compiling Ruby/Rails —–> Using Ruby version: ruby-2.0.0 —–> Warning: Removing `Gemfile.lock` because it was generated on Windows. Bundler will do a full resolve so native gems are handled properly. This may result in unexpected gem versions being used […]

在多台笔记本电脑上运行相同的Rails代码,并将所有数据库中的数据保存到同一个数据库中

我试图在localhost:3000上的多台笔记本电脑上运行相同的rails代码。 如何保存从不同笔记本电脑提交的数据以保存在单个数据库中。 或者,他们将共享相同的数据库,如果有人提交了数据,它将自动在其他人的笔记本电脑上。 还要考虑不会有任何互联网连接,但我们可以用以太网电缆连接它们。 另外,我们使用的是sqllite3。 谢谢!

用点击将SQLite数据库推送到Heroku?

所以我试图将一个SQLite3数据库推送到Heroku,我认为这是可能的,但是在这里和这里阅读意味着它可能不是(以下不起作用)。 heroku pg:push sqlite://db/development.sqlite3 HEROKU_POSTGRESQL_OLIVE_URL ! LOCAL_SOURCE_DATABASE is not a valid database name 当Heroku将语法切换为pg:push时,这是否已更改pg:push从db:push还是永远不可能? 鉴于不可能将解决方案从SQLite3迁移到本地postgres,然后推送到Heroku?

如何通过has_many评论关系显示评分最高的专辑

我正在设置一个简单的ruby / rails应用程序,用户可以在其中查看相册。 在相册的展示页面上,我通过相册控制器中的此代码平均与该相册相关联的所有用户评论 def show @album = Album.find_by_id(params[:id]) if @album.reviews.present? @ratings = Review.where(album_id: @album).average(:rating).truncate(2) else render ‘show’ end end 这给了我每张专辑的平均评分。 在我的主页上(通过不同的控制器路由)我想显示平均评分最高的前7张专辑。 我最初做的是将此代码放入单独的主页控制器: @albums = Album.all @ratings = @albums.each {|album| album.reviews.average(:rating).to_f} @ranked_ratings = @ratings.sort_by {|rating| rating} @top_seven = @ranked_ratings.reverse[0…7] 我以为我找到了解决方案,直到我意识到我所展示的是最后输入数据库的7张专辑。 回到绘图板我已经能够获得所有相册的数组(数组中的每个元素都是与该相册相关的评论列表),在我的控制器中使用此代码: @albums = Album.all @ratings = @albums.collect {|album| album.reviews} 我一直在试图找出如何循环@ratings并找到每个album_id的平均评分,然后按照最高平均评分对这些记录进行排序并在视图中显示。

SqLite3 LoadError:不兼容的库版本

操作系统:Ubuntu 16,Rails 4,Ruby 2.1.2错误: LoadError: incompatible library version – /home/user/.rvm/gems/ruby-2.1.2@recipe_box/gems/sqlite3-1.3.11/lib/sqlite3/sqlite3_native.so /home/user/.rvm/gems/ruby-2.1.2@recipe_box/gems/sqlite3-1.3.11/lib/sqlite3.rb:6:in `require’ /home/user/.rvm/gems/ruby-2.1.2@recipe_box/gems/sqlite3-1.3.11/lib/sqlite3.rb:6:in `rescue in ‘ /home/user/.rvm/gems/ruby-2.1.2@recipe_box/gems/sqlite3-1.3.11/lib/sqlite3.rb:2:in `’ /home/user/work/cookbook/config/application.rb:7:in `’ /home/user/work/cookbook/Rakefile:4:in `’ LoadError: cannot load such file — sqlite3/2.3/sqlite3_native /home/user/.rvm/gems/ruby-2.1.2@recipe_box/gems/sqlite3-1.3.11/lib/sqlite3.rb:4:in `require’ /home/user/.rvm/gems/ruby-2.1.2@recipe_box/gems/sqlite3-1.3.11/lib/sqlite3.rb:4:in `’ /home/user/work/cookbook/config/application.rb:7:in `’ /home/user/work/cookbook/Rakefile:4:in `’ 的Gemfile: gem ‘rails’, ‘4.2.5.1’ gem ‘sqlite3’ Gemfile.lock的 sqlite3 (1.3.11) 当我在s.require_paths = [“lib”]更改文件sqlite3-1.3.11.gemspec时 到s.require_paths= [“lib/sqlite3_native”]我和另一个gem(大约10个)有同样的问题,比如这里 重新安装gem不工作 需要做些什么才能解决问题?

多列数据库索引和查询速度

我正在部署一个Rails应用程序,该应用程序将来自各种第三方提供商的优惠券数据聚合到一个可搜索的数据库中。 针对每个优惠券在四个字段中进行搜索:标题,优惠券代码,描述和到期日期。 因为这些第三方提供商中的一些在保持数据排序方面做得相当糟糕,并且因为我不希望重复的优惠券进入我的数据库,所以我在这四列中实现了一个独特的复合索引。 这可以防止同一张优惠券不止一次插入我的数据库。 鉴于我正在搜索这些列(通过简单的WHERE column LIKE %whatever%暂时的WHERE column LIKE %whatever%匹配),我希望这些列能够通过索引它们来获得速度增益。 所以这是我的问题: 所有列的复合索引是否会提供相同的搜索速度增益,就好像我已经为每列应用了单独的索引一样? 或者它只保证行之间的唯一性? 使问题复杂化的是我正在开发Rails,所以我的问题既适用于SQLite3和MySQL(以及我们将来可能移植到的任何内容),而不是一个特定的RDBMS。 我的猜测是索引会加速搜索各个列,但我真的没有足够的“幕后”数据库专业知识来对这个判断充满信心。 感谢您提供专业知识。

由于缺少sqlite3 gem,Rails 4.0rc1应用程序未运行

我第一次尝试安装Rails 4.0。 在带有Ruby 2.0 x64的Windows 8上。 冉: gem install rails –version 4.0.0.rc1 –no-ri –no-rdoc 然后我跑: rails new test_app cd test_app rails s 但localhost:3000的网页报告以下错误: 为数据库适配器指定’sqlite3’,但未加载gem。 将gem’sqlite3 gem ‘sqlite3’添加到您的Gemfile中。 它在我的Gemfile中: gem ‘sqlite3’ 我尝试多次运行bundle install ,它甚至没有在所有其他gem中列出它。 更新 :我尝试以两种不同的方式安装sqlite3 gem,两者都使用从DevKit的msys.bat文件打开的终端。 @szines下面提到的方式给了我以下错误: $ gem install sqlite3 –platform=ruby — –with-opt-dir=c:/sqlite-amalgamation-3071602 Temporarily enhancing PATH to include DevKit… Building native extensions with: ‘–with-opt-dir=c:/sqlite-amalgamation-3071602’ […]

将Rails应用程序推送到Heroku时,“sqlite3.h”丢失了

我正在学习本教程 ,但是当我尝试推送到Heroku时失败了。 看来“sqlite3.h”似乎不见了。 我是开发新手,所以我不确定哪些信息可以帮助人们诊断问题,所以这就是一切:)。 我在Mac OS X 10.7 Lion上运行。 以下是我正在使用的所有内容的版本: Amits-MacBook-Air-2:demo_app amitgupta$ ruby -v ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin11.3.0] Amits-MacBook-Air-2:demo_app amitgupta$ rails -v Rails 3.2.3 Amits-MacBook-Air-2:demo_app amitgupta$ sqlite3 -version 3.7.11 2012-03-20 11:35:50 00bb9c9ce4f465e6ac321ced2a9d0062dc364669 Amits-MacBook-Air-2:demo_app amitgupta$ heroku -v 2.25.0 Amits-MacBook-Air-2:demo_app amitgupta$ port -v MacPorts 2.0.4 Entering interactive mode… (“help” for help, “quit” to quit) [RailsApps/demo_app] […]

将XML文档导入Rails数据库?

我一直在阅读教程后的教程,但似乎没有什么对我有用。 目标是获取包含元素和属性的XML文档,并将数据插入数据库中。 每个元素/属性都是数据库中的一列,每个条目都是一行。 这是我一直在使用的组成XML文档: To Kill A Mockingbird Harper Lee Catcher in the Rye JD Salinger Murphy’s Gambit Syne Mitchell 所以我希望有一个包含2个条目的表格,每个条目都有ISBN,标题,描述和作者。 这是基础知识。 (我认为CDATA是完全可选的。如果这是我问题的一部分,那么我们一定要摆脱它…) 最终目标有点复杂。 有多本书的多个图书馆。 数据库之间有关系,所以我可以从我的Book数据库中引用Library数据库,反之亦然。 我完全迷失了,绝对是一个新手,但我有一个良好的计算机知识,并愿意测试和尝试。 我正在使用Rails 3.2.6和默认的SQLite3数据库(3.6.20)。 我已经安装了REXML,ROXML,LibXML等,并通过API和演练阅读,但事情并没有成功。 必须有一种简单的方法可以将XML文档转换为具有Book对象的Library对象(带有.name方法)(具有.title,.author,.isbn和.description方法)。 任何帮助都是真正的帮助! 更新! 好的,下一个问题。 我一直在愚弄这背后的逻辑,并想知道做以下事情的最佳方法…… 假设我有这个新的和改进的XML文件。 TKAM Desc1 H Lee Catcher in the Rye Desc2 JD S Murphy\’s Gambit Desc3 Syne M 所以现在我们有两个图书馆,第一个名为“喜欢的书籍”,有2本书,第二本名为“其他书籍”,并有一本书。 每本书知道它属于哪个库的最佳方法是什么? 最初,我创建了一个Library数据库和一个Book数据库。 […]

Rails 3.1。 Heroku PGError:运算符不存在:字符变化=整数

修复错误有点麻烦。 一切都适用于本地机器。 在PG上,heroku是错误的。 这是日志: ←[32m2012-01-09T19:52:24+00:00 app[web.1]:←[0m ActionView::Template::Error (PGEr ror: ERROR: operator does not exist: character varying = integer ←[32m2012-01-09T19:52:24+00:00 app[web.1]:←[0m LINE 1: …T “reviews”.* FROM “re views” WHERE “reviews”.”trip_id” = 32 ←[32m2012-01-09T19:52:24+00:00 app[web.1]:←[0m : SELECT “reviews”.* FROM “review s” WHERE “reviews”.”trip_id” = 32): ←[32m2012-01-09T19:52:24+00:00 app[web.1]:←[0m 31: ←[32m2012-01-09T19:52:24+00:00 app[web.1]:←[0m 33: ←[32m2012-01-09T19:52:24+00:00 app[web.1]:←[0m 34: ←[32m2012-01-09T19:52:24+00:00 app[web.1]:←[0m 32: […]