1 «урок».

Итак, описывать процесс установки openserver и laravel я не буду, благо все это гуглится за 2 минуты.
Начнем.
Нам нужно реализовать с помощью laravel простенький блог.

Какие сущности у нас будут?

  • Пользователь
  • Комментарий
  • Пост
  • Категория
  • Тег
  • Подписка

Какие атрибуты нужны сущности Post?

  • id
  • title
  • slug (seo ссылка)
  • content
  • data
  • description
  • category_id
  • image
  • user_id (автор)
  • status (опубликовано или черновик)
  • views
  • is_featured (рекомендованные посты)
  • created_at
  • updated_at

У постов будут следующие методы:

    • add()
    • edit()
    • remove()
    • uploadImage()
    • removeImage()
    • getImage()
    • setCategory()
    • setTags()
    • toggleStatus()
    • toggleFeaterd()

 

Следующая сущность — Category.

Ее атрибуты:

  • id
  • title
  • slug

И один метод — posts().

Сущность тега — Tag аналогична сущности Category.

Сущность — пользователь User имеет атрибуты:

  • id
  • name
  • password
  • is_admin (имеет ли пользователь права администратора или нет)
  • status (заблокирован ли пользователь или нет)
  • avatar
  • created_at
  • updated_at

Методы пользователя:

  • add()
  • edit()
  • remove()
  • uploadAvatar()
  • removeAvatar()
  • toggleAdmin()
  • toggleStatus()

Сущность комментариев — Comment.

Атрибуты:

  • id
  • text
  • user_id
  • post_id
  • status
  • created_at
  • updated_at

Здесь, я думаю все понятно.

У сущности один метод — toggleStatus(), который определяет одобрен ли комментарий администратором или нет.

Последняя сущность подписка — Subcribe имеет атрибуты:

  • id
  • email
  • token
  • creadet_at
  • updated_at

У сущности два метода — add() и remove().

Какие таблицы в базе данных нам нужны?

  • posts
  • categories
  • tags
  • post_tags
  • users
  • comments
  • subscriptions

Планирование ядра в принципе законченно. Я так думаю, по крайней мере.

 

 

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *