Как я автоматически сортирую has_many отношения в направляющих?

img src должно быть base64string. Нам нужно конвертировать binaryPicture в base64string . У нас есть такой код

var base64data = Buffer.from(binaryPicture, 'binary').toString('base64');
const pictureHtml = `<img src="data:image/png;base64","${base64data}">`;
96
задан Jim Puls 13 April 2009 в 02:49
поделиться

3 ответа

Вы можете указать порядок сортировки для чистой коллекции с помощью параметра has_many самого:

class Article < ActiveRecord::Base 
  has_many :comments, :order => 'created_at DESC'
end 
class Comment < ActiveRecord::Base 
  belongs_to :article 
end

Или, если вам нужен простой метод сортировки, не связанный с базой данных, используйте sort_by :

article.comments.sort_by &:created_at

Сбор этого с помощью методов упорядочивания, добавленных ActiveRecord:

article.comments.find(:all, :order => 'created_at DESC')
article.comments.all(:order => 'created_at DESC')

Ваш пробег может отличаться: характеристики производительности вышеупомянутых решений будут сильно меняться в зависимости от того, как вы в первую очередь получаете данные и какой Ruby вы используете для запуска своего приложения.

148
ответ дан Jim Puls 24 November 2019 в 05:37
поделиться

Если вы используете Rails 2.3 и хотите использовать одинаковый порядок по умолчанию для всех коллекций этого объекта, вы можете использовать default_scope заказать вашу коллекцию.

class Student < ActiveRecord::Base
  belongs_to :class

  default_scope :order => 'name'

end

Тогда, если вы позвоните

@students = @class.students

, они будут упорядочены в соответствии с вашим default_scope. В очень общем смысле упорядочение TBH - единственное действительно хорошее использование областей по умолчанию.

7
ответ дан nitecoder 24 November 2019 в 05:37
поделиться

Вы можете использовать метод find ActiveRecord для получения и сортировки объектов.

  @article.comments.find(:all, :order => "created_at DESC")

http: // api. rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html

6
ответ дан vrish88 24 November 2019 в 05:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: