Я недавно начал проект в Ruby on Rails. Раньше я делал все свои проекты в Python, но решил дать Ruby выстрел.Ruby switch like idiom
В проектах, которые я написал в Python Я использовал миленький технику объяснена правильный ответ на этот пост:
Dictionary or If statements, Jython
Я использую эту технику из-за Python не имеющие природную функцию переключателя и также избавиться от больших блоков if else
Я пытаюсь восстановить воссозданный выше метод в Ruby, но, похоже, не может его получить.
Может ли кто-нибудь помочь мне?
Ruby имеет выражение для случая. почему ты хочешь сделать это? –
Его больше просто любопытство, чем что-либо еще :) – RailsSon
При преобразовании кода с одного языка на другой рекомендуется писать новый код идиоматически для нового языка. Другими словами, используйте свои конструкции вместо того, чтобы грубо заставлять конструкции других языков. В этом конкретном случае Ruby 'Object # send' будет делать это, но я думаю, что для чтения и обслуживания кода вам, вероятно, будет лучше использовать операторы' case/when'. Они облегчают просмотр происходящего, который окупается через год, когда вам нужно что-то добавить. –