Tag: ruby on rails 3

使用cron选项卡发送邮件时连接拒绝

我每天都在使用gem来发送电子邮件任务。 我在RAKEFILE名称coffee中创建了一个rake任务。 这是我的任务代码: task :coffee => :environment do ReservationBooksNotify.notify.deliver puts “hihi” end 当我在控制台rake coffee运行此任务时,它工作正常! 但是当我在schedule.rb中创建一个计划以便每分钟自动发送邮件时,我收到一个错误 hihi rake流产! 连接被拒绝 – 连接(2) 跟踪时的错误 rake coffee RAILS_ENV=production –trace ** Invoke coffee (first_time) ** Invoke environment (first_time) ** Invoke rails_admin:disable_initializer (first_time) ** Execute rails_admin:disable_initializer [RailsAdmin] RailsAdmin initialization disabled by default. Pass SKIP_RAILS_ADMIN_INITIALIZER=false if you need it. ** Execute environment […]

使用嵌套属性时的批量分配警告

我对rails上的编程和ruby都很陌生。 我已经关注了http://ruby.railstutorial.org/然后我开始观看http://railscasts.com的剧集。 我想要做的是“以单一forms处理多个模型”。 下面你将看到我的模型和他们的assosications以及我试图从用户获取信息的表单视图。 我的建模是那样的; 有雇主,雇主有面试和面试有问题。 Customquestion模型: class Customquestion < ActiveRecord::Base attr_accessible :content belongs_to :interview validates :content, length: {maximum: 300} validates :interview_id, presence: true end 面试模型: class Interview < ActiveRecord::Base attr_accessible :title, :welcome_message belongs_to :employer has_many :customquestions, dependent: :destroy accepts_nested_attributes_for :customquestions validates :title, presence: true, length: { maximum: 150 } validates :welcome_message, presence: true, length: […]

Rails 3:嵌套资源中的不同命名空间?

有没有办法在嵌套资源中使用(不同的)命名空间? 例如,我有: resources :users do resources :tags end 我想将标签控制器放在控制器/公共控制器中,同时将用户控制器放在控制器/用户中,并使用等效的模板。 如果我试试这个: namespace :user do resources :users do namespace :common do resources :tags end end end 我会得到多余的路线名称: user_common_tags等。但我想要像common_tags这样的东西

将查询转换为活动记录

要执行范围查询,我们遵循以下语法 – : oms[:order_items].where(:internal_sla => 3..5) results in this query => #= 3) AND (`internal_sla` 但是如何更改活动记录查询以给我这样的东西=> select internal_sla from order_items where (internal_sla=0) OR (internal_sla=10)

多个Elasticsearch索引

我在同一个Ubuntu服务器上有一个Rails 3应用程序的暂存和生产实例(使用轮胎gem)。 似乎这两个实例都共享相同的弹性搜索索引,这显然不是我想要的。 如何让我的生产和登台实例使用单独的实例?

通过登录保持表单输入

我有这个应用程序,用户可以写一个学校的评论。 用户必须使用Facebook登录才能保存评论。 问题是如果用户未签名并撰写评论,然后使用Facebook登录他们必须再次撰写相同的评论。 我试图通过将评论数据表格存储在会话中来解决这个问题,但我不能让它工作。 这样做的正确方法是什么? ReviewForm: “btn” %> “btn” %> ReviewController class ReviewsController review, :school_id => school, :user_id => current_user, :rating => rating) end private def signed_in? !current_user.nil? end def signed_in_user unless signed_in? # Save review data into sessions session[:school] = School.find(params[:school_id]) session[:review] = params[:review] session[:rating] = params[:rating] # Login the user to facebook redirect_to […]

Rails有很多属于

我正在构建一个日常交易应用程序,以更好地学习Ruby on Rails。 在M.Hartly教程中,我理解了模型的概念及其关系(微博属于用户,用户有多个微博)。 但是我不确定如何在我的日常交易项目中付诸实践。 我决定为具有不同权限的两类用户的用户建立一个模型: admin_user可以创建/更新/编辑/删除交易 standard_user谁可以看到交易,如果他们发现一个有趣的参与交易 两个用户都进入用户数据库 我还决定有一个交易模型并进入交易数据库所以我理解得很好: admin_user has_many交易 交易属于admin_user standard_user有很多交易(实际上他可以参与很多交易) 和交易不属于standard_user所以我不能在这里说什么。 我明白了吗? 可以根据用户的权利类型定义与模型对象的不同关系(在这种情况下:交易) PS:我想我会将用户与cancan gem分开来给予他们不同的权利

rails g迁移错误

我不知道该怎么办。 尝试使用命令 $ rails g migration vacancy 但是这个命令给我错误: invoke active_record /home/proger/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/psych.rb:203:in `parse’: (): mapping values are not allowed in this context at line 21 column 11 (Psych::SyntaxError) from /home/proger/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/psych.rb:203:in `parse_stream’ from /home/proger/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/psych.rb:151:in `parse’ … 错误代码中有许多行 我不知道如何解决这个问题谢谢 UPDATE 发展: 适配器:mysql2 编码:utf8 重新连接:false 数据库:工作 游泳池:5 用户名:root 密码:toor socket:/var/run/mysqld/mysqld.sock 更新:用sqlite3没有问题。 mysql gem中的问题

has_many通过条件不起作用

我有一个模型等级和一个模型用户。 在成绩和用户之间通过协作实现多对多关联。 在user.rb中 has_many :grades, through: :collaborations, source: :user 工作,但我只需要获得属性“archived”= false的成绩 我试过了 has_many :grades, through: :collaborations, source: :user, conditions: [‘ archived = ? ‘, false] 但它需要所有等级,换句话说,条件被忽略。 我可以在这种情况下加入我的合作,但协作与Grade和School有多态关系,而且学校没有存档字段,这些都会导致错误。 有任何想法吗?

ActiveRecord :: Enum – PG :: InvalidTextRepresentation:ERROR:整数的输入语法无效:

我有一个奇怪的错误,并希望有人能指出我正确的方向。 我有一个名为Organizations的模型,以及一个名为department的属性,请参阅下面的模式摘录: t.integer “department”, default: 0 在我的模型里面已经为这个属性定义了我的枚举,因为我正在使用ActiveRecord :: Enum ,如下所示: enum department: [:conferences, :design_teams, :services, :clubs, :events, :communications] 但是当我查询JobPosting.joins(job: :organization).where(organizations: { department: ‘conferences’ })我收到的错误是: PG::InvalidTextRepresentation: ERROR: invalid input syntax for integer: “conferences” 仅供参考:一个组织有很多乔布斯,乔布斯有很多JobPostings。 但是,当我查询Organization.where(department: ‘conferences’)它可以工作。 任何帮助将不胜感激。