AnnaApk / my-interviews

https://my-interviews-indol.vercel.app
0 stars 0 forks source link

Добавить Skills #7

Closed alexbaumgertner closed 8 months ago

alexbaumgertner commented 9 months ago

Skills в профиле пользователя — это список навыков, который уже есть у пользователя с указанием текущего уровня (например от 1 до 5). Для каждого уровня будет описание, какие задачи подразумеваются на этом уровне

например: HTML/CSS 1 - поправить верстку простых элементов (кнопки, картинки) HTML/CSS 5 - оптимизация сложных анимаций, верстка под разные платформы

Skills в описании вакансии — это список навыков для вакансии (если указаны), с требуемым уровнем.

Skills в разделе "развитие" — рекомендации материалов, задач и тд под каждый навык

Как-то так, в первом приближении.

AnnaApk commented 9 months ago

Верстать заготовки пока? На отдельном роуте профиль пользователя? И он самостоятельно через инпуты будет добавлять свои навыки, указав текущий уровень? все возможные навыки я ведь не смогу учесть сходу. А в развитии - это также заполняется им? или нужно собрать базу материалов ?

alexbaumgertner commented 9 months ago

Думаю, можно начать с профиля пользователя, где он_а, будет указывать текущий набор Skills.

Для Skills нужна админка — страница со всеми скилами, добавлением/редактированием/удалением. У Skill будет имя, описание, указание 5 уровней (grade), как развивать этот скилл.

А в развитии - это также заполняется им? или нужно собрать базу материалов ?

Будет заполняться админом.

alexbaumgertner commented 9 months ago

Я постараюсь сегодня завтра более подробно написать

AnnaApk commented 9 months ago

Спасибо! Я пока "потыкаю-подумаю", как поняла на данный момент

AnnaApk commented 9 months ago

будет вторая таблица с навыками, которую заполняет админ, данные из нее нужны будут и на странице с карточками вакансий (точнее в форме на создание новой), и на странице профиля пользователя, и на странице админа. Можно получать skills в том же самом GET c vacancies? в том же api/route файле? или это плохо в случае с swr он будет 2 таблицы проверять вместо одной... с другой стороны какая страница будет первой ... нужно на каждой свой api и swr выходит с одинаковыми запросами

export async function GET() {
  try {
    const { rows as vacancies } = await sql`SELECT * FROM vacancies;`
    const { rows  as skills } = await sql`SELECT * FROM skills;`
    return NextResponse.json({ data: { vacancies, skills }}, { status: 200 });
  } catch (error) {
    return NextResponse.json({ error }, { status: 500 });
  }
}
alexbaumgertner commented 9 months ago

swr умеет кешировать запросы. Пока можно не беспокоиться, что будет в одном роуте несколько запросов в БД или на одной странице несколько запросов к API. Делай как наиболее понятно для тебя, а оптимизировать можно рефакторингом после.

AnnaApk commented 8 months ago

Skills в разделе "развитие" — рекомендации материалов, задач и тд под каждый навык

"развитие" в целом навыка? не для каждого уровня?

если в целом, можно ли добавить в форму создания навыка textarea под "развитие" и при submit проверять заполнено ли это поле и делать другой/второй функцией добавление в третью таблицу evolution ? или второй вариант - сделать отдельную форму для этого?

AnnaApk commented 8 months ago

сейчас страница админа - большой компонент, надо наверное его разбить на поменьше.

AnnaApk commented 8 months ago

Думаю, можно начать с профиля пользователя, где он_а, будет указывать текущий набор Skills.

Для Skills нужна админка — страница со всеми скилами, добавлением/редактированием/удалением. У Skill будет имя, описание, указание 5 уровней (grade), как развивать этот скилл.

А в развитии - это также заполняется им? или нужно собрать базу материалов ?

Будет заполняться админом.

image

выходит надо еще форму в этой вкладке для добавления материала/ссылок админом и как-то структурировать это?

AnnaApk commented 8 months ago

и профиль пользователя можно делать:

AnnaApk commented 8 months ago

@alexbaumgertner посмотри пожалуйста предыдущие комментарии

alexbaumgertner commented 8 months ago

Начал смотреть, сегодня-завтра закончу. Спасибо за пинг!

AnnaApk commented 8 months ago

спасибо!

alexbaumgertner commented 8 months ago

Круто, замерджил PR!

alexbaumgertner commented 8 months ago

и профиль пользователя можно делать:

  • фио
  • скилы
  • загружать файл с резюме + с возможностью скачать его ?

вынес в https://github.com/AnnaApk/my-interviews/issues/9