• Какой framework использовать для создания легких сайтов?

    @marsdenden
    Посмотри на MaxSite CMS. Получаются очень шустрые сайты, плюс UniCSS намного логичнее bootstrap'а.
    Ответ написан
    Комментировать
  • Почему не получается передать данные в компонент Vue?

    @marsdenden
    Я в таких случаях делаю просто - переменная, куда получаем данные для компонента по умолчанию null и компонент оборачиваю в div c v-if="abc!==null". Все. Как только загрузились данные с сервера - так и отрендерился компонент
    Ответ написан
    Комментировать
  • Yii2 как отключить пагинацию или увеличить лимит?

    @marsdenden Автор вопроса
    Сам спросил - сам решил. На самом деле достаточно просто, надо всего лишь переопределить prepareDataProvider в контроллере

    public function actions()
        {
            $actions = parent::actions();
            $actions['index']['prepareDataProvider']=function ($action){
                $queryfunc = [$this->modelClass,'find'];
                return new ActiveDataProvider([
                    'query' => $queryfunc(),
                    'pagination' => false,
                ]);
            };
            return $actions;
        }


    Да, согласен, может быть долго и нудно, но для моей задачи - самое оно ))
    К решению подтолкнул ответ здесь
    Ответ написан
  • Зачем в рест апи ид шлется в самом урле, а не в дате или не в квери?

    @marsdenden
    Вопрос в принятии правил REST. Я тоже поначалу так думал - что нафиг нужно всякие GET, PATCH, PUT. Зачем, если есть POST и в нем все прекрасно можно передавать в теле запроса и разбирать тоже. Однако, сейчас делаю приложение совсем с нуля и бэк пилю на Yii по всем правилам - GET - получение данных, POST - создание и т. д.
    Если разобраться с конкретным фреймворком - создание такого API становится намного проще, когда количество функции этого API переваливает за пару десятков. А для простеньких на пяток-другой можно и правила понарушать.
    Но когда приходит время разбираться, почему что-то пошло не так и/или надо что-то добавить/переделать - такой "простой" API превращается в кошмар. Да и документировать его сложнее
    Ответ написан
    Комментировать
  • В чем преимущество Vue composition api?

    @marsdenden
    Лично мне понравились две вещи - разделение вёрстки и логики и повторное использование кода. Есть у меня в боевом проекте два компонента из которых один пришлось разбивать на три, а второй просто огромный - и развесистый template и просто бесконечная портянка script. Дождусь стабильного релиза vue3 и буду переделывать на composition api.
    Еще один плюс, который я для себя нашел - нормальная отладка. Почему то у меня отладчик в devtools имеет смещение на одну строку в коде, который находится в .vue и совершенно нормально работает с чистыми .js файлами. И console.log тоже врет на 1 строку в первом случае и точно выводит номер строки во втором.
    Ну и рекомендую к просмотру https://youtu.be/v6AVfIupNB8 и https://youtu.be/Ix8wcwrnPns
    Ответ написан
    Комментировать
  • Зачем нужен NGINX unit для go/node.js?

    @marsdenden
    Nginx - web сервер. Отсюда вытекает многопоточность, возможность повесить множество сайтов на один ip, ну и прочие плюшки.
    Нода однопоточна, всякие прибамбасы вроде вебворкеров - костыли, нормальный продакшн под высокую нагрузку сделать можно, но сложно (имхо).
    Пробуйте, тестируйте, нагружайте, почувствуйте разницу
    Ответ написан
    Комментировать
  • Как создать публичный web сервер на своем linux пк?

    @marsdenden
    Статический IP адрес, который виден из интернета, а дальше - покупка доменного имени и настройка DNS у того же продавца доменного имени.
    Как правило не имеет особого смысла для того, чтобы просто "друг из соседнего дома заходил на сайт" из-за определенных финансовых затрат на
    1. статику
    2. стоимость доменного имени
    Ответ написан
    2 комментария
  • Как создать массив реактивных переменных?

    @marsdenden
    Массив или объект? Если массив, то есть ли возможность преобразовать в объект? Для реактивности используйте Vue.set
    Ответ написан
    Комментировать
  • Как сделать авторизацию веб приложения только для одного компьютера?

    @marsdenden
    Залогинится суперпуперадмином, у которого будет секретная кнопочка, которая в localStorage запишет непонятную абракадабру. Далее логиниться суперпуперзаказчиком вместе с абракадаброй - если абракадабра пришла на сервер вместе с логин-паролем - ОК, иначе - "ой, что-то пошло не так".
    Реализовать просто - в форме сделать hidden input, куда при загрузке формы авторизации скриптом записывать localStorage.getItem('supersecretabrakadabra') - если ее на данном компе в хранилище нет, то она и не дойдет до сервера.
    Единственный минус такого решения - необходимость логиниться админом. Но идея может развиваться и дальше - к примеру, на сервере в БД юзеров добавить поле "привязан", если поле чистое, то при первом логине заказчика так же прописывается абракадабра в localStorage и передается на сервер, сервер в записывает ее в поле "привязан" и все следующие попытки залогиниться обламывает, если абракадабра не совпадает. Ну а о том, что абракадабра должна генериться каждый раз уникально, говорить, думаю, не стоит.
    Дальше - больше. Заказчику можно предоставить две кнопки - "привязать" и "отвязать", первая будет просить сервер привязать к новой абракадабре, вторая - очистить поле "привязан", соответственно разрешить логин с другого устройства. Само собой, кнопка "отвязать" должна присутствовать только в случае уже существующей привязки. Тогда админа сервера для ручной очистки поля "привязан" придется дергать только в случае исключительных ситуаций, к примеру смерти винта на привязанной машине
    Ответ написан
    Комментировать
  • Почему не проходит авторизация?

    @marsdenden
    Рискну предположить, что куки, которые выставляет auth.php при ajax запросе браузером не воспринимаются и в локальное хранилище не записываются. Поэтому запрос авторизации в варианте с куками делается по старинке - через form-submit, когда в ответ прилетает не результат ajax, а полноценный html, вместе с которым приходит и нужная кука.
    Ищите способ сохранить куку в браузере по результату выполнения скрипта. В консоли разработчика можно ее увидеть на вкладке Network при просмотре ajax запроса. Для начала неплохо бы почитать здесь, потом начинать изучать какой-нибудь JS-фреймворк, мне понравился vue.js, достаточно низкий порог входа, весьма логичен. Со временем понимаешь, что на jquery далеко не уедешь, так что переход к фреймворку - вопрос времени
    Ответ написан
    Комментировать
  • Почему VueJs пишет что нету компонентов в папке components?

    @marsdenden
    кажется, понял, почему возникает ошибка.
    Ключ - в различиях имен файлов Profile.vue и profile.vue для линукс систем и в полном игнорировании этой разницы виндой. При закачке проекта на гитхаб, и последующей его скачке регистр слетает, есть смысл проверить - имя файла Profile.vue или profile.vue после скачки проекта с гитхаба. Для винды разницы нет, но даже под виндой, если назвать файл с заглавной буквы, а импортировать его в виде import Profile from './profile' - сборка обломается.
    Посему категорически рекомендую проверить имена файлов после скачки с гитхаба и если они все рухнули в нижний регистр - поправить код import везде и в дальнейшем не увлекаться CamelCase в именах файлов, то есть совсем.
    Ответ написан
    1 комментарий
  • Как подружить Vue с IE?

    @marsdenden
    А чем собирается проект? У меня webpack прогоняет через babel и все работает в IE
    Кусок конфигурации webpack.config.js
    module: {
    		rules: [
    
    			{
    				test: /\.js$/,
    				loader: 'babel-loader',
    				exclude: /node_modules/
    			},
    Ответ написан
    3 комментария
  • Как сделать так, чтобы шапка сайта не перезагружалась при переходе на другие страницы?

    @marsdenden
    Vue.JS + Vue.Router - легко и просто.
    Ответ написан
    Комментировать
  • Какие существуют объективные недостатки у systemd?

    @marsdenden
    Жалею, что не разобравшись, поставил в продакшн сервер с systemd. За три месяца огреб столько проблем, сколько их не было за три года на sysVinit. Да и для десктопа преимущества сомнительные. Особенно, когда начинает сыпаться корневая ФС, а он fschk на ней сделать не в состоянии...
    Ответ написан
    4 комментария
  • Как подружить avrdude и atmega168v-10au?

    @marsdenden
    А из IDE не программируется? Если да, то подсмотреть, что IDE прописывает для дудки
    Ответ написан
  • Существует ли какая нибудь статистика по скорости работы MariaDB на ОС Windows и Linux?

    @marsdenden
    Несколько лет назад пробовал юзать mysql на win server 2003. Не понравилось. И дело было не столько в скорости, сколько в стабильности. База была в локалке и открыта наружу. Клиенты - 1с с самописной компонентой для прямого доступа. Так проблем я огрёб столько, что зарёкся больше никогда так не делать. Клиенты постоянно теряли связь, что приводило к необходимости для каждого (!) запроса делать коннект к базе. Запросы могли просто уйти в никуда, что критично на insert/update. При этом могло даже не быть сообщений об ошибках. С базой на линуксе такого нет, запустил 1с, она один раз приконнектилась и весь день этим коннектом пользуется. Ну и скорость тоже не устраивала. На тот момент сервер виндовый был на core2duo i3, а линуксовый поставили на обычном пентиуме (не помню модельку точно, но современник i3). Нагрузка у обоих была не сильно большая, но скорость и стабильность линукса порадовали.
    Ответ написан
    Комментировать
  • Убрать обратный слэш?

    @marsdenden
    Используйте heredoc <<<
    https://ru.wikipedia.org/wiki/Heredoc-%D1%81%D0%B8...
    Ответ написан
    Комментировать
  • Как отправить ответ ajax`y досрочно?

    @marsdenden
    Отделите мух от котлет. Обработка запроса и запуск сокет-службы - несколько разные вещи. По сути вы пытаетесь в одном скрипте соединить два. Вынесите код сокет-службы в отдельный скрипт и запускайте его из скрипта запроса. Или изучите php fork, но там есть подводные камни с соединениями с базой
    Ответ написан
    Комментировать
  • Как составить POST запрос с массивом данных?

    @marsdenden
    Все просто. На любом языке формируете http запрос с указанием, что передаете json (Content-type: application/json) и в теле запроса передаете сам json, а у ж там что хотите - хоть массив, хоть объект. Для экспериментов можно использовать Postman, чтобы формировать запросы и Telerik Fiddler для изучения анатомии запросов и ответов.
    Ответ написан
    Комментировать
  • С чего начать разрабатывать приложение на NativeScript и Vue.js?

    @marsdenden
    Начать надо с vue.js как такового. Свойства, вычисляемые свойства, компоненты, vuex, написание плагинов и т. д.
    Потом уже вкуривать в nativescript. Причем не получится взять код vue для webapp и просто сбацать нативное приложение, поскольку nativescript-vue совсем не то же самое, что vue.js. Это просто братья, но не близнецы. Хотя бы потому что в nativescript шаблоны vue строятся совсем по иному принципу - это, скорее, оболочка на Android SDK, главный плюс которой - некое приведение к общему стандарту для Android и iOS. Но по граблям потанцевать придется, поскольку нет полной документации и нет исчерпывающих туториалов, приходится рыться на гитхабе.
    Но Playground - просто отличная вещь для попробовать
    Ответ написан
    1 комментарий