2 votes

Comment remplacer rails 3 Model.scoped par rails 4 Model.all

Je suis en train de convertir un projet de rails 3 à 4.2. J'ai découvert que scoped est déprécié. Pour moi, scoped est source de confusion. Mon code actuel dans le contrôleur d'index est le suivant

@customers = Customer.scoped
@customers = Customer.between(params['start'], params['end']) if (params['start'] && params['end'])

Alors comment puis-je supprimer Customer.scoped du code ci-dessus tout en conservant la même fonctionnalité ?

Comme d'autres articles suggèrent d'utiliser all au lieu de scoped . J'ai donc essayé quelque chose comme ceci

@customers = Customer.all
@customers = @customers.between(params['start'], params['end']) if (params['start'] && params['end'])

Je ne suis cependant pas sûr que mon code converti soit correct ou non.

1voto

Preethi Mano Points 430

Avez-vous essayé ceci

@customers = Customer.where(nil)

au lieu de

@customers = Customer.scoped

se référer à ce https://github.com/lassebunk/dynamic_sitemaps/pull/35

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X