Дальнейшие linux-задания представляют собой последовательное создание web-проекта. Для упрощения задачи ниже приведено техническое задание описывающее проект целиком.
Проект представляет собой сервис ответов на вопросы. Пользователь сервиса имеет возможность зарегистрироваться, задать вопрос, ответить на вопросы других пользователей. Так же пользователь может отметить вопросы с помощь кнопки "лайк", изменяя их рейтинг. В качестве прототипа образца можно использовать http://stackoverflow.com/
- Пользователь - email, имя, пароль, аватарка
- Вопрос - заголовок, текст, автор, рейтинг вопроса
- Ответ - текст, вопрос, автор, флаг "правильности"
- Лайк - вопрос, пользователь
- URL: /
- Назначение: представляет из себя список "популярных" вопросов. В списке выводятся вопросы за последнюю неделю в порядке убывания рейтинга.
- URL: /new/
- Назначение: список вопросов по дате их добавления начиная с самого свежего.
- URL: /question/123/
- Назначение: на этой странице можно прочитать текст вопрос и список ответов к нему. Авторизованные пользователи могут добавить свой ответ.
- URL: /signup/
- Назначение: пользователь может ввести свой email, пароль, имя, выбрать аватарку и зарегистрироваться в проекте
- URL: /login/
- Назначение: пользователь может ввести email и пароль и авторизоваться (войти) в проекте.
- URL: /ask/
- Назначение: авторизованный пользователь может задать вопрос, после чего перейдет на страницу этого вопроса.
- URL: /like/123/
- Назначение: пользователь может нажать кнопку "Лайк" у вопроса и это увеличит рейтинг вопроса. Пользователь может ставить "лайк" не более 1 раза для 1 вопроса.