Je crois que concept devrait travailler suit:
Vous attendez le hachage 'params de regarder un peu comme ceci:
params = { :mail_id => 1, :user_id => 2, :token => 'foo' }
ce qui signifie params.keys retourneront [: mail_id,: user_id,: token]
params.keys.sort retourne les clés classées par ordre alphabétique: [: mail_id,: jeton,: user_id]
Donc vérifiez si params tiennent les clés exactes que vous attendez à avoir, vous pouvez faire:
if params.keys.sort == [:mail_id, :token, :user_id]
render :text => 'Serving your request'
else
render :text => 'Server understood the request, but refuses to serve it, since some of the requested data is missing'
end
vous pouvez vérifier le contenu exact de hachage votre 'params de l'aide logger.debug (params.keys) dans votre contrôleur
Où voyez-vous 'Params.sort.key' pourriez-vous nous donner un exemple? –
bien sûr: par exemple: si params [: id] et params [: user_id] et params.key.sort == ['action', 'controller', 'id', 'user_id'] .. J'ai vu ça dans un projet –
Pouvez-vous être plus précis sur ce que vous voulez réaliser? De plus, votre question est fausse quand elle dit params.sort.key. Comme vous l'avez mentionné dans le commentaire ci-dessus, il peut s'agir de params.keys.sort puisque params est un Hash. params.keys sera un tableau de toutes les clés du hachage. –