i'm using ROR and in my controller function i recived params and base of these params i need to perform action according condition. But i see these are about 18 conditions.
How can i dry this code.
if params[:topic] == "Topic (title)" and params[:sort] == "Date (ASC)"
# custom code
elsif params[:topic] == "Topic (title)" and params[:sort] == "Date (DESC)"
# custom code
elsif params[:topic] == "Topic (title)" and params[:sort] == "Topic (ASC)"
# custom code
elsif params[:topic] == "Topic (title)" and params[:sort] == "Topic (DESC)"
# custom code
elsif params[:topic] == "Topic (title)" and params[:sort] == "Author (ASC)"
# custom code
elsif params[:topic] == "Topic (title)" and params[:sort] == "Author (DESC)"
# custom code
elsif params[:topic] == "Post (body)" and params[:sort] == "Date (ASC)"
# custom code
elsif params[:topic] == "Post (body)" and params[:sort] == "Date (DESC)"
# custom code
elsif params[:topic] == "Post (body)" and params[:sort] == "Topic (ASC)"
# custom code
elsif params[:topic] == "Post (body)" and params[:sort] == "Topic (DESC)"
# custom code
elsif params[:topic] == "Post (body)" and params[:sort] == "Author (ASC)"
# custom code
elsif params[:topic] == "Post (body)" and params[:sort] == "Author (DESC)"
# custom code
elsif params[:topic] == "Author" and params[:sort] == "Date (ASC)"
# custom code
elsif params[:topic] == "Author" and params[:sort] == "Date (DESC)"
# custom code
elsif params[:topic] == "Author" and params[:sort] == "Topic (ASC)"
# custom code
elsif params[:topic] == "Author" and params[:sort] == "Topic (DESC)"
# custom code
elsif params[:topic] == "Author" and params[:sort] == "Author (ASC)"
# custom code
elsif params[:topic] == "Author" and params[:sort] == "Author (DESC)"
# custom code
end
Many many thanks