Tag: ruby on rails

关于Ruby Tutorial第9章的RSPEC错误

我在mac osx10.8上使用ruby 1.8.7。 我不知道这些错误是什么意思。 我目前正处于ruby on rails教程的第9章末尾。 任何帮助是极大的赞赏! 1) Authentication signin with invalid information Failure/Error: before { click_button “Sign in” } NoMethodError: undefined method `[]’ for nil:NilClass # ./app/controllers/sessions_controller.rb:8:in `create’ # (eval):2:in `send’ # (eval):2:in `click_button’ # ./spec/requests/authentication_pages_spec.rb:21 2) Authentication signin with invalid information Failure/Error: before { click_button “Sign in” } NoMethodError: undefined method `[]’ […]

CommentController #create中的ActiveRecord :: AssociationTypeMismatch

我一直得到Post预期,得到String错误。 如果有人可以提前帮助我。 {:controller=>”comments”, :action=>”create”} do |f|%> @post.id %> def create @comment = Comment.create(params[:comment]) if @comment.save redirect_to(:controller=>”posts” ,:action=>’index’) else redirect_to(:controller=>”posts” ,:action=>’show’, :id=>”post.id”) end end

更快的数据库WHERE for Rails可用性日历

我正在建立一个Ruby on Rails宿舍床预订系统,我正在寻找一种更好的方式来加载我的可用性日历。 下面的代码非常适合显示床的可用性(参见附图),但我觉得多个WHERE数据库调用在服务器上过于繁琐,必须有更快的方法来处理数据。 楷模: user.rb bed.rb(user_id,name) guest.rb(user_id,姓名,电话,地址,电子邮件) reservation.rb(user_id,bed_id,guest_id,date) 用户是宿舍业主。 他们创造了与他们的生意一样多的床并给他们起了一个名字(Bed#1,Bed#2,Twin-Attic,Master-2nd Floor等)。 每个用户都有很多客人,这些人是在特定日期在宿舍睡觉的人。 使用simple_calendar gem,我获得当前月份的所有预订并处理它们以显示每周视图。 排序逻辑: 步骤1.在一周的第一天通过current_user的床进行迭代。(simple_calendar提供每天的预订) 步骤2.如果床有当天的预订(!=无),请提供床名和预订的客人姓名。 步骤3.如果床没有预订,请将床名和“空”。 步骤4.完成一周的第一天后,转到第二天并重复。(simple_calendar处理此事) 正如我所说的,下面的代码有效,但是当用户有50张床位时,每天会拨打50个WHERE电话,因此对于7天日历会有350个(如果需要找到客人的姓名,则会有更多)。 如果您需要更多信息或解释,请与我们联系。 谢谢! = week_calendar events: @monthly_reservations, attribute: :date do |date, appts| – current_user.beds.each do |bed| – if bed.reservations.where(date: date).first != nil – guest_name = bed.reservations.where(date: date).first.guest.abbreviated_name %p{style: “border: 1px solid black; padding: 5px; font-size: […]

没有root访问权限的Postinstall,rvm(ruby版本管理器)

我正在尝试使用RVM(“ ruby版本管理器 ”),在源安装之后,我需要将rvm命令添加到我的配置文件中。 我在$HOME/.profile文件中添加了以下代码,但它似乎不起作用。 [[ -s “$HOME/.rvm/scripts/rvm” ]] && . “$HOME/.rvm/scripts/rvm” # This loads RVM into a shell session. 所以我只是手动输入下面的临时添加rvm命令,但它似乎不起作用。 我得到了重定向错误的遗失名称,如下所示。 >>source ~/.rvm/scripts/rvm Missing name for redirect. 我该如何解决这个问题? 顺便说一句,我没有root访问权限,而我的linux是一个redhat系统。

捆绑安装错误json gem

我在rails v 5.1.6(Ruby版本2.5.0)上遇到了ruby的以下问题,大多数时候我尝试在从github下载的rails项目上运行命令bundle install,我收到以下错误。 Fetching gem metadata from http://rubygems.org/………. Using rake 0.8.7z Using abstract 1.0.0 Using activesupport 3.0.7 Using builder 2.1.2 Using i18n 0.5.0 Using activemodel 3.0.7 Using erubis 2.6.6 Using rack 1.2.8 Using rack-mount 0.6.14 Using rack-test 0.5.7 Using tzinfo 0.3.37 Using actionpack 3.0.7 Using mime-types 1.23 Using polyglot 0.3.3 Using treetop 1.4.14 Using […]

Ruby on Rails:REST API +文件上传+回形针

我正在尝试通过PUT请求在我的服务器上使用REST API上传附件。 我可以通过将二进制文件放在请求体中来实现这一点,但我也想将此文件保存为使用paperclip保存附件的模型的附件。 这是我目前涉及的类定义: class Cl < ActiveRecord::Base after_update :save_tses validates_associated :tses has_many :tses …truncated… def save_tses tses.each do |ts| ts.save(false) end end end class Ts { :thumb => {:geometry => “100×141>”, :format => :jpg} }, :path => “:rails_root/public/system/:attachment/:id/:style/:friendly_filename”, :url => “/system/:attachment/:id/:style/:friendly_filename” belongs_to :cl def friendly_filename “#{self.tsa_file_name.gsub( /[^a-zA-Z0-9_\.]/, ‘_’)}” end end 我可以使用html页面上的文件上传保存附件。 我想在控制器上执行此操作,该控制器通过PUT请求将文件作为二进制数据接收。 有什么建议?

Elasticsearch需要映射* all *关联吗?

我有一个大型模型(它基本上是我的整个应用程序)。 我在这个模型上有7个或更多的关联,包括多对多,:through =>等。这个模型也有一些简单的属性(标题,url等)。 我唯一关心索引的是那些3或4个简单属性(标题,url,描述,类别)。 其余我不在乎。 当我使用load: true时,一切都很完美load: true ,但是一旦我把它关掉,一切都会中断。 解决这个问题的唯一方法就是进入并添加复杂的映射,触摸,触摸回调等等每一个关联? 我希望我理解这个错误,因为这将只是搜索3或4个简单属性的大量代码。 我不知道我在说什么,但我可以搜索一下弹性搜索索引,但是返回一个ID列表,然后以正常的轨道方式循环遍历那些? 谢谢!

使用Multipart Form在Ruby on Rails 3上无法使用文件上传

我有一个非常简单的配置来上传文件。 我只想将图像上传到数据库(我知道,我知道……)并附上说明。 而已。 这是我的模型的样子(我从这里学到的)。 基本上,它正是设置示例的方式,只有attr_protected行才能使用Rails 3.2: Photo < ActiveRecord::Base # note: there is also a :description attribute!! attr_protected :file_name, :content_type, :binary_data def image_file=(input_data) self.file_name input_data.original_filename self.content_type = input_data.content_type.chomp self.binary_data = input_data.read end end 这是我非常简单的视图: New Photo Upload a Photo Photo 最后(仅为完整性),这是我的Create动作(简单的脚手架): def create @photo = Photo.new(params[:photo]) respond_to do |format| if @photo.save format.html { redirect_to @photo, […]

ruby on rails //如何使用咖啡。 而不是我的项目中的js?

我正在研究这个项目。 我想使用actioncable为我的项目添加聊天。 但我按照示例(示例地址在注释中),但发生了错误。 在该示例中,仅使用Js。 而不是咖啡,我想使用Js,这样它不会影响现有的咖啡。 我该怎么办? 我的github地址是https://github.com/sangyeol-kim/stackoverflow_ask_actioncable 我将咖啡文件的名称更改为js。 从gemfile我隐藏了gem’coffee-rails’。 (#gem’coffee-rails / bundle install)但该网站根本不起作用。

Rails:fb_connect_async_js引发500错误

我是Ruby on Rails的新人。 我目前正在尝试在我的项目上安装Facebooker2 gem,以允许用户通过这个着名的网络连接。 我按照官方安装指南 。 但是,我仍然有一个问题。 当我使用* fb_connect_async_js * helper时,我收到500错误。 服务器日志告诉我以下内容: 故障安全响应期间出错:不兼容的编码正则表达式匹配(UTF-8 regexp与ASCII-8BIT字符串) 你有什么解决方案吗? 我的Gemfile,如果它可能有用: source ‘http://rubygems.org’ gem ‘rails’, ‘3.1.1’ # Bundle edge Rails instead: # gem ‘rails’, :git => ‘git://github.com/rails/rails.git’ gem ‘mysql2’ gem ‘execjs’ gem ‘therubyracer’ gem ‘activeadmin’ gem ‘meta_search’, ‘>= 1.1.0.pre’ gem ‘devise’ gem ‘mogli’ gem ‘ruby-hmac’ gem ‘facebooker2’ # Gems […]