Advertisement
Guest User

Untitled

a guest
Jul 22nd, 2014
184
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.20 KB | None | 0 0
  1. class Post < ActiveRecord::Base
  2. belongs_to :blog
  3. belongs_to :user
  4.  
  5. has_and_belongs_to_many :tags, join_table: 'tags_posts', :dependent => :destroy
  6. has_and_belongs_to_many :categories, join_table: 'categories_posts', :dependent => :destroy
  7. has_many :comments, :dependent => :destroy
  8.  
  9. validates :title, presence: true
  10.  
  11. def has_tag?(tag_name)
  12. tags.where(name: tag_name).any?
  13. end
  14.  
  15. def tag_names
  16. tags.pluck(:name)
  17. end
  18.  
  19. def tag_names=(names)
  20. self.tags = names.map{ |name| Tag.where(name: name).first }
  21. end
  22.  
  23. def tag_name=(tag_name)
  24. single_tag = [tag_name]
  25. self.tag_names = single_tag
  26. end
  27.  
  28. def has_category?(category_name)
  29. categories.where(name: category_name).any?
  30. end
  31.  
  32. def category_names
  33. categories.pluck(:name)
  34. end
  35.  
  36. def category_names=(names)
  37. self.categories = names.map{ |name| Category.where(name: name).first }
  38. end
  39.  
  40. def category_name=(category_name)
  41. single_category_name = [category_name]
  42. self.category_names = single_category_name
  43. end
  44.  
  45. def user=(id)
  46. user = User.find_by(id: id)
  47. self.user_id = user.id if user
  48. end
  49.  
  50. end
  51.  
  52. class Tag < ActiveRecord::Base
  53. belongs_to :blog
  54. validates :name, presence: true, uniqueness: true
  55. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement