Сообщество Хекслета

Андрей Забелин 1 день назад →

Что-то странное с тестами. Если в рендер формы редактирования передавать post, то тесты будут показывать на то, что title и id не найдены, но тесты пройдут. Ревью. Вывод:

console.error
    TypeError: /usr/src/app/views/posts/edit.pug:7
        5|   .row.mt-3
        6|     .col-sm-6.mx-auto
      > 7|       h3.text-xs-center Edit '#{post.title}'
        8|       form(action=`/posts/${post.id}?_method=PATCH` method='post')
        9|         include _form.pug
        10|   // END

    Cannot read property 'title' of undefined
        at eval (eval at wrap (/usr/lib/node_modules/pug/node_modules/pug-runtime/wrap.js:6:10), <anonymous>:53:62)
        at template (eval at wrap (/usr/lib/node_modules/pug/node_modules/pug-runtime/wrap.js:6:10), <anonymous>:126:135)
        at Object.exports.renderFile (/usr/lib/node_modules/pug/lib/index.js:427:38)
        at Object.exports.renderFile (/usr/lib/node_modules/pug/lib/index.js:417:21)
        at View.exports.__express [as engine] (/usr/lib/node_modules/pug/lib/index.js:464:11)
        at View.render (/usr/lib/node_modules/express/lib/view.js:135:8)
        at tryRender (/usr/lib/node_modules/express/lib/application.js:640:10)
        at Function.render (/usr/lib/node_modules/express/lib/application.js:592:3)
        at ServerResponse.render (/usr/lib/node_modules/express/lib/response.js:1012:7)
        at /usr/src/app/application.js:90:9

      at Function.logerror (../../lib/node_modules/express/lib/application.js:630:43)


 PASS  __tests__/solution.test.js

  requests
    ✓ GET / (961ms)
    ✓ GET /posts (132ms)
    ✓ GET /posts/new (93ms)
    ✓ POST /posts (39ms)
    ✓ POST /posts (errors) (95ms)
    ✓ GET posts/:id/edit (51ms)
    ✓ PATCH posts/:id (18ms)
    ✓ PATCH posts/:id (unproccessable entity) (161ms)
    ✓ DELETE posts/:id (12ms)


Test Suites: 1 passed, 1 total
Tests:       9 passed, 9 total
Snapshots:   0 total
Time:        4.959s
Ran all test suites.

А если использовать form.title и form.id, то все нормально.

Денис Тоцкий 1 день назад →

Всем привет! По заданию след условие:

По сути в этом задании надо реализовать объекты. По понятным причинам использовать объекты для создания объектов нельзя. Представьте что в языке объектов нет и мы их хотим добавить.

Но в решении учителя использована конструкция map[index] = ... (те. присвоение св-ва объектe массива) что противоречит условию задания.

Виктор Крамаренко 1 день назад →

Здравствуйте. У меня такая проблема, я полный чайник во всём этом, и мне не совсем понятен такой момент. Шаг действий с установкой live-server где надо открыть терминал и перейти в директорию с нашим проектом. Как это сделать? Смотрел гайды на ютубе, там прописывали что то типа "cd Newproject..." но у меня ничего не выходит. Помогите чайнику пожалуйста.

Nikolai Gagarinov 1 день назад →

В Ридми указано, что необходимо обеспечить работу с несколькими инпутами, в тестах есть пример запроса городов. Мб в веб-доступ тоже добавить города? Будет два инпута, как в упражнении с табами.

Я вручную отредактировал файл для веба, но запросы на /cities.json возвращают 404.

Константин Лозовский 1 день назад →

Доброго времени суток. Для определения коллизии, рассуждаю следующим образом. Коллизия - ситуация, когда:

   Ключ1 !== Ключ2
   Хеш1 === Хеш2

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

Ксения Андреева 1 день назад →

А не будет удобнее в этом задание использовать OrderedDict?

Альберт 1 день назад →

money1.format(); // "$100" money2.format(); // "€200"

в тестах проверяется как "$100.00" и "€200.00"

Daria Baklykova 1 день назад →

а для чего split в решении учителя? Вроде, без него работает

Viacheslav Grischuk 1 день назад →

Добрый день. Я думаю, что пользователям было бы удобнее переходить по ссылкам в описании к уроку, чем заполнять адресную строку вручную при каждом появлении ссылки в видео.

Мы учим программированию с нуля до стажировки и работы. Попробуйте наш бесплатный курс «Введение в программирование» или полные программы обучения по Javascript, PHP, Python и Java.

Хекслет

Подробнее о том, почему наше обучение работает →