import { Model, RelationMappings } from 'objection';
import { Blogs } from './Blogs';

export class RelatedBlogs extends Model {
  static tableName = 'related_blogs';

  id!: number;
  blog_id!: number;
  related_blog_id!: number;

  blog?: Blogs;
  relatedBlog?: Blogs;

  static relationMappings = (): RelationMappings => ({
    blog: {
      relation: Model.BelongsToOneRelation,
      modelClass: Blogs,
      join: {
        from: 'related_blogs.blog_id',
        to: 'blogs.id',
      },
    },
    relatedBlog: {
      relation: Model.BelongsToOneRelation,
      modelClass: Blogs,
      join: {
        from: 'related_blogs.related_blog_id',
        to: 'blogs.id',
      },
    },
  });
}
