Advertisement
Guest User

Untitled

a guest
May 22nd, 2015
229
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.69 KB | None | 0 0
  1. model Movement
  2. def to_param
  3. name.gsub(/ /, '-')
  4. end
  5.  
  6. def self.find_by_param input
  7. find_by_name input.gsub(/-/, ' ')
  8. end
  9. end
  10.  
  11. model Event
  12. def to_param
  13. name.gsub(/ /, '-')
  14. end
  15.  
  16. def self.find_by_param input
  17. find_by_name input.gsub(/-/, ' ')
  18. end
  19. end
  20.  
  21. # It can be solved by using module and submodule
  22. module ParamToName
  23. module ClassMethods
  24. def self.find_by_param input
  25. find_by_name input.gsub(/-/, ' ')
  26. end
  27. end
  28.  
  29. def to_param
  30. name.gsub(/ /, '-')
  31. end
  32.  
  33. def self.included(klass)
  34. klass.extend ClassMethods
  35. end
  36. end
  37.  
  38. model Event
  39. include ParamToName
  40. end
  41.  
  42. model Movement
  43. include ParamToName
  44. end
  45.  
  46. Event.new.to_param
  47. Event.find_by_param input
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement