Tag: ruby on rails

Minimagick gem无法将多页PDF转换为多个png图像

我是RoR的新手,我正在尝试开发一个幻灯片共享应用程序,用户可以通过该应用程序上传和共享包含一副幻灯片(每页一张幻灯片)的多页PDF。 然后,观看者可以在“显示”页面上查看这些幻灯片。 在幕后我试图将多页pdf转换成几个.png文件(1 pdf页 – > 1.png文件),然后以轮播/滑块的方式显示它们。 这是我的上传者: # encoding: utf-8 class DocUploader < CarrierWave::Uploader::Base # Include RMagick or MiniMagick support: # include CarrierWave::RMagick include CarrierWave::MiniMagick # Choose what kind of storage to use for this uploader: storage :file # storage :fog # Override the directory where uploaded files will be stored. # This is […]

不通知属性更改,也不更新表

我想更新表,但不执行更新SQL,因此更改无效。 细节: 最初是issue.name我们’问题’。 我想改成’qqqqqqqqqqqq’。 控制器: def update if params[‘cancel’] redirect_to(@issue) return end @issue = Issue.find(params[:id]) logger.debug “original object” logger.debug “#{@issue.to_yaml}” logger.debug ‘bulk attribute settings…’ @issue.attributes= params[:issue] logger.debug “after bulk settings” logger.debug “#{@issue.to_yaml}” @issue.events.build(:note=>params[:issue][:description],:verb=>’Edited’, :changes=>@issue.textalize_changes) if @issue.save logger.debug “after save” logger.debug “#{@issue.to_yaml}” redirect_to(@issue) else render :action => “edit” end end 另外一个代码段可能很有趣的是textalize_changes : def textalize_changes r = […]

DoubleRenderError(渲染和/或重定向,并在redirect_to或self.render末尾添加’并返回’

每次我将消息插入数据库时​​,我都有一个消息传递系统。 它插入重复项即时获取AbstractController::DoubleRenderError (Render and/or redirect were called multiple times in this action) 。 我尝试在redirect_to或self.render结束时添加and return ,但它没有帮助。 它似乎是从create方法发生的问题 # app/controllers/messages_controller.rb class MessagesController < ApplicationController before_action :authenticate_user! before_action :set_conversation def index if current_user == @conversation.sender || current_user == @conversation.recipient @other = current_user == @conversation.sender ? @conversation.recipient : @conversation.sender @messages = @conversation.messages.order("created_at DESC") else redirect_to conversations_path, alert: "You […]

rails中的Fancybox错误

我已经制作了一个带有图片上传和附加的fancybox的post模型来显示这些图片,这一切都很棒。 例: “fancybox”, :rel => “gallery” if asset.object.image? %> 但是,当我想将fancybox附加到单个图像时,我有错误: The requested content cannot be loaded. Please try again later. 例: “fancybox”%> 所以有人能指出这个问题吗? 谢谢!

无法找到gem’铁轨’的头痛

我在Mac OS X 10.6 Snow Leopard上。 我刚刚更新了我的Ruby东西: sudo gem update 不幸的是,它打破了一切。 当我尝试在我的网站目录中运行一个简单的命令时,例如: rails generate model User 它失败了,出现了这个错误: 无法在Gemfile中列出的任何gem源中找到gem’rail(= 3.0.3,runtime)’。 尝试运行bundle install 。 所以我尝试运行bundle install rails 。 它成功了! 所以我试着运行rails 。 它失败了。 所以我尝试输入以下命令获取Rails版本: rails -v 哪个失败了这个错误: 在任何来源中都找不到rake-0.8.7 尝试运行bundle install 。 但它不仅失败了,它还在我的网站目录中创建了一个空文件夹rails/ruby/1.8 。 这对我来说是一场彻底的灾难,因为我只是Ruby和Ruby on Rails的初学者,甚至是终端。 任何帮助将非常感激。 谢谢。

undefined方法`%’表示false:FalseClass

错误( undefined method ‘%’ for false:FalseClass )引用此行 rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24) 为什么会产生这个错误? 它是编辑程序中某些默认代码的一部分,直到最近我才遇到这个问题。

Ruby on Rails – 显示has_many表中的字段

我有两张桌子:船和航程。 一艘船可以有很多航程,但是一次航行可能只有一艘船。 在RoR中,船模型具有has_many:voyages,Voyage模型设置为belongs_to:ship 我可以使用与此类似的代码在视图中显示ship表中的所有字段而不会出现任何问题: 我现在正试图在视图中显示航行表中的一条信息。 如果我做: 我能够拉出ActiveRecord条目,即: # 如果我追加.to_json,我可以提取包含所有数据的json文件。 如何在我的视图中显示特定字段,我尝试过的内容包括: 和 但两个错误都在我身上。 注意:虽然这种关系是一艘船到多次航行 – 目前每艘船只有一次航行。 我承认自己是一个新手!

Rails 3 has_and_belongs_to_many关联:如何分配相关对象而不将它们保存到数据库

使用has_and_belongs_to_many_association class Category has_and_belongs_to_many :projects end 我想在保存类别之前使用before_filter来设置项目 before_filter :set_projects, :only => [:create, :update] def set_projects @category.assign_attributes({projects: Project.all}) end 这种方法很有效,除非无法保存类别并且存在回滚。 项目仍在数据库中更新。 为什么这一行 @category.assign_attributes({projects: Project.all}) 立即生成这些数据库记录? BEGIN INSERT INTO “categories_projects” (“category_id”, “project_id”) VALUES (86, 1) INSERT INTO “categories_projects” (“category_id”, “project_id”) VALUES (86, 2) INSERT INTO “categories_projects” (“category_id”, “project_id”) VALUES (86, 3) COMMIT 在提交这些新的categories_projects关系之前,我想等待@ category.save。 如何推迟这些提交? 请注意,我无法修改主“更新”操作。 我必须在filter和回调之前/之后使用,以覆盖我的应用程序的当前function。 […]

Ruby On Rails检索mysql数据库数据’a’不同’b’

我的数据库有一个设备读取列表, 列是id,device_id,device_reading,update_time 如何为每个设备选择所有最新读数? 这意味着,我首先需要根据update_time对数据进行排序 然后我需要过滤数据库使用一些独特的方法(唯一的device_id) 那么我可以从刚刚过滤的行中检索device_reading。 也就是说,从表中检索列a,其中b是不同的 我该怎么做到这一点? 在铁轨上的ruby 提前致谢

Ruby reverse.each_with_index和delete_at导致最新的Ruby / Rails出现问题

所以,我很清楚在迭代块中移除项目的危险(这是反向循环),我知道Matz提到了一些关于迭代中的突变导致稳定性问题,但我似乎无法想象这一点。 这个例子有点令人费解,我不确定即使解决它也会完全复制这个例子,但我必须尝试。 arr1 = [1, 2, 3, 4, 5] arr2 = [3, 4, 5] puts arr1.inspect puts arr2.inspect arr2.each do |i| arr1.reverse.each_with_index do |j, index| if i == j arr1.delete_at(index) end end end puts arr1.inspect puts arr2.inspect 输出: [1, 2, 3, 4, 5] [3, 4, 5] [4, 5] [3, 4, 5] 应该是什么时候: [1, 2, 3, […]