Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Post < ActiveRecord::Base
- belongs_to :blog
- belongs_to :user
- has_and_belongs_to_many :tags, join_table: 'tags_posts', :dependent => :destroy
- has_and_belongs_to_many :categories, join_table: 'categories_posts', :dependent => :destroy
- has_many :comments, :dependent => :destroy
- validates :title, presence: true
- def has_tag?(tag_name)
- tags.where(name: tag_name).any?
- end
- def tag_names
- tags.pluck(:name)
- end
- def tag_names=(names)
- self.tags = names.map{ |name| Tag.where(name: name).first }
- end
- def tag_name=(tag_name)
- single_tag = [tag_name]
- self.tag_names = single_tag
- end
- def has_category?(category_name)
- categories.where(name: category_name).any?
- end
- def category_names
- categories.pluck(:name)
- end
- def category_names=(names)
- self.categories = names.map{ |name| Category.where(name: name).first }
- end
- def category_name=(category_name)
- single_category_name = [category_name]
- self.category_names = single_category_name
- end
- def user=(id)
- user = User.find_by(id: id)
- self.user_id = user.id if user
- end
- end
- class Tag < ActiveRecord::Base
- belongs_to :blog
- validates :name, presence: true, uniqueness: true
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement