0

私はこのクラスメソッドを持っています:

def self.default_column
  "created_at"
end

default_column私のメソッドを利用できるように、次の関数をどのように書き直すことができますか?

def next
  User.where("created_at > ?", created_at).order('created_at ASC').first
end

私はこれらのようなことを試しました...

def next
  User.where("#{default_column} > ?", default_column).order('#{default_column} ASC').first
end

...しかし、まったく機能しないため、ここではひどく間違っているに違いありません。

助けてくれてありがとう。

4

2 に答える 2

2
def next
  default_column = self.class.default_column
  User
  .where("#{default_column} > ?", send(default_column))
  .order("#{default_column} ASC")
  .first
end
于 2013-07-16T14:55:44.917 に答える