小编Man*_*nga的帖子

rubies/ruby​​-2.0.0-p0/lib/ruby​​/2.0.0/psych.rb:205:在`parse':( <unknown>):在第18行扫描一个简单的键时找不到预期的':'第3栏

这是我在做一个简单的过程中得到的完整错误:

$ rails generate

Users/localuser/.rvm/rubies/ruby​​-2.0.0-p0/lib/ruby​​/2.0.0/psych.rb:205:在`parse':():扫描简单时找不到预期的':'第18行第3列的键(Psych :: SyntaxError)

有什么想法吗?

我的系统:

  • ruby 2.0.0p0 [x86_64-darwin12.2.0] Rails 3.2.13 mysql Ver 14.14 Distrib 5.6.10,for osx10.8(x86_64)

这是错误中提到的psych.rb文件的摘录

#See Psych::Nodes for more information about YAML AST.
def self.parse_stream yaml, filename = nil, &block
  if block_given?
    parser = Psych::Parser.new(Handlers::DocumentStream.new(&block))
    parser.parse yaml, filename
  else
    parser = self.parser
    parser.parse yaml, filename
    parser.handler.root
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails ruby-on-rails-3.2

8
推荐指数
1
解决办法
7174
查看次数

使用devise登录时,防止User中的updated_at字段被修改

我有一种情况需要使用updated_at所有模型的字段来创建同步功能.但是在User模型的情况下,updated_at每次用户登录时都会修改该字段.更糟糕的情况是,当设备使用用户的凭据登录同步数据updated_at字段时,在同步甚至开始之前就会被修改.

所以,我的问题是,updated_at当用户登录时,我们是否可以停止设计更新字段?

ruby-on-rails devise rails-activerecord

3
推荐指数
1
解决办法
635
查看次数

活动关系中的Ruby on Rails错误,NoMethodError:#ActiveRecord :: Relation:0x00000002ab5908的未定义方法'methodname'

这是两个具有1对1关联的模型的代码

class User < ActiveRecord::Base
  has_one :e_user
  validates_presence_of :first_name
  validates_presence_of :last_name
  validates :password, presence: true, :length => { :minimum => 6}
  validates_uniqueness_of :email, :message => ": This email is already registered!"
  validates_presence_of :email  
end
Run Code Online (Sandbox Code Playgroud)

以下是第二个型号:

class EUser < ActiveRecord::Base
  belongs_to : user
end
Run Code Online (Sandbox Code Playgroud)

当我去rails控制台并从db获取用户时,通过这样做

a = User.where(:id => 1)
Run Code Online (Sandbox Code Playgroud)

我有一个用户.现在我想让e_user与a相关联(如果它应该返回它或返回null),但是当我在控制台中键入a.EUser时出现错误消息,错误是

NoMethodError: undefined method `EUser' for  #<ActiveRecord::Relation:0x00000002ab5908>from /home/faraz/.rvm/gems/ruby-1.9.3-p448/gems/activerecord-3.1.1/lib/active_record/relation.rb:459:in `method_missing'
from (irb):3
from /home/faraz/.rvm/gems/ruby-1.9.3-p448/gems/railties-3.1.1/lib/rails/commands/console.rb:45:in `start'
from /home/faraz/.rvm/gems/ruby-1.9.3-p448/gems/railties-3.1.1/lib/rails/commands/console.rb:8:in `start'
from /home/faraz/.rvm/gems/ruby-1.9.3-p448/gems/railties-3.1.1/lib/rails/commands.rb:40:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'
Run Code Online (Sandbox Code Playgroud)

问候

ruby-on-rails model-associations active-relation rails-activerecord

1
推荐指数
1
解决办法
6808
查看次数