0

голосов
1

ответ
9

Просмотры

Зависимости Разрешая Nestjs косяка

Не могу понять, в чем проблема моего кода. (Я новичок с nestjs, я пытаюсь узнать его, передавая некоторые приложения к нему). Журнал консоль говорит: Гнездо не может решить зависимости в UrlsAfipService (?). Пожалуйста, убедитесь, что аргумент с индексом [0] доступен в контексте ApiModule. UrlsAfipService импорт {инъекционные} из @ nestjs / общий "; импорт {AfipUrls} из @Injectable»./urls' () экспорт класса UrlsAfipService {конструктор (частный afipUrls только для чтения: AfipUrls,). {} getWSAA () {вернуться this.afipUrls.homo () wsaa; //
Marcelo J Forclaz
0

голосов
0

ответ
5

Просмотры

Nagios обработчик события, игнорируя интервал проверки

Я недавно создал обработчик события для проверки службы, которая будет перезагружен Tomcat на 3 разных коробках. Параметры проверки являются: 5 проверок 2 минут проверяет, когда Ok 5 Minute проверки в противном случае в сценарии обработчика событий у меня есть: # Какое состояние является IOS PN в? случай «$ 1» в ОК) # Служба в порядке, так что ничего не делать ... ;; ПРЕДУПРЕЖДЕНИЕ) # Является ли это «мягкий» или «жесткий» государство? случай "$ 2" в SOFT) случае "$ 3" в # Проверяем № 2) эхо "` date` Перезапуск Tomcat на узле 1 для IOS PN (второе мягкое предупреждение состояние) ..." >> /tmp/iOSPN.log ;; 3) эхо "` date` Перезапуск Tomcat на узле 2 для IOS PN (третье мягкое предупреждение состояние) ..." >> /tmp/iOSPN.log ;; 4) эхо "` date` Перезапуск Tomcat на узле 3 для IOS PN (четвёртая мягкое предупреждение состояние) ..." >> /tmp/iOSPN.log ;; ESAC ;; ЖЕСТКИЙ) # ничего не делать пусть Nagios отправить уведомление ;; ESAC ;; ВАЖНЫЙ) # В теории ничто не должно достигнуть этой точки ... ;; ESAC выход 0 Таким образом, обработчик события необходимо перезапустить Tomcat на узле 1 после 2-й проверки предупреждения, подождите 5 минут, прежде чем снова проверить, затем перезапустить узел 2, если он по-прежнему является проблемой, а затем подождите 5 минут и проверьте снова перезапустите узел 3, если он по-прежнему является проблемой. Однако при проверке файла журнала можно увидеть следующее: Чт Апрель 18 15:09:13 2019 Перезапуск Tomcat на узле 1 для IOS PN (второе мягкое предупреждение состояние) ... Чт Апр 18 15:09:23 2019 Перезапуск Tomcat на узле 2 для IOS PN (третье мягкое предупреждение состояние) ... Чт апр 18 15:09:33 2019 перезапуск Tomcat на узле 3 для IOS PN (четвёртая мягкое предупреждение состояние) ... Как вы можете видеть, что бы перезапустить каждый коробка через 10 секунд не 5 минут, я удалил линии, которые на самом деле называют перезапуск Tomcat, так как это не может быть сделано в этот короткий промежуток времени. Я ничего не вижу в журналах Nagios подробно, почему он сделал следующую проверку так быстро после того, как, так что любая помощь будет оценена. Дополнительно: Это определение сервиса: определить сервис {использование 5check-сервис имя_хост ACTIVEMQ1 contact_groups Тирелла-администраторы-некритические SERVICE_DESCRIPTION ActiveMQ - IOS PushNotification очереди Pending товары event_handler restartRemote_Tomcat $ SERVICESTATE $ $ $ $ SERVICESTATETYPE SERVICEATTEMPT $ check_command check_activemq_queue_item2 Http:! // activemq1: 8161 / администратора / !! XML / queues.jsp IosPushNotificationQueue 100 300} определяют службы {имя 5check-сервис; «Имя» этого сервиса шаблона active_checks_enabled 1; Активные проверки включены служебные passive_checks_enabled 1; Пассивные проверки включены служебные / принимаются parallelize_check 1; Активные контрольные проверки должны быть распараллеливание (отключить это может привести к серьезным проблемам с производительностью) obsess_over_service 1; Мы должны зацикливаться на эту услугу (если необходимо) check_freshness 0; По умолчанию это НЕ служебная проверка «свежесть» notifications_enabled 1; уведомления обслуживания включены event_handler_enabled 1; обработчик событий Услуги включен flap_detection_enabled 1; Закрылков включено обнаружение failure_prediction_enabled 1; Предсказание Отказ включен process_perf_data 1; производительность процесса retain_status_information данные 1; Сохранение информации о состоянии по программе перезапускает retain_nonstatus_information 1; Сохранение информации без статуса по программе перезапускает is_volatile 0; Услуга не летучий check_period 24x7; Услугу можно проверить в любое время дня max_check_attempts 5; Перепроверьте службы до 5 раз для того, чтобы определить его окончательный (жесткий) состояние normal_check_interval 2; Проверьте обслуживание через каждые 5 минут при нормальных условиях retry_check_interval 5; Перепроверьте Службы каждые две минуты, пока жесткое состояние не может быть определена поддержка contact_groups; Уведомления будут посланы к каждому в группе notification_options-х админов 'ш, и, с, г; Отправлять уведомления о предупреждении, неизвестно, критическое, и события восстановления notification_interval 5; Re-извещать о проблемах обслуживания через каждые 5 минут notification_period 24x7; Уведомления могут быть отправлены в любое время регистра 0; DONT РЕГИСТРАЦИИ Это определение - его не РЕАЛЬНОГО сервис, просто ШАБЛОН! } Перепроверьте Службы каждые две минуты, пока жесткое состояние не может быть определена поддержка contact_groups; Уведомления будут посланы к каждому в группе notification_options-х админов 'ш, и, с, г; Отправлять уведомления о предупреждении, неизвестно, критическое, и события восстановления notification_interval 5; Re-извещать о проблемах обслуживания через каждые 5 минут notification_period 24x7; Уведомления могут быть отправлены в любое время регистра 0; DONT РЕГИСТРАЦИИ Это определение - его не РЕАЛЬНОГО сервис, просто ШАБЛОН! } Перепроверьте Службы каждые две минуты, пока жесткое состояние не может быть определена поддержка contact_groups; Уведомления будут посланы к каждому в группе notification_options-х админов 'ш, и, с, г; Отправлять уведомления о предупреждении, неизвестно, критическое, и события восстановления notification_interval 5; Re-извещать о проблемах обслуживания через каждые 5 минут notification_period 24x7; Уведомления могут быть отправлены в любое время регистра 0; DONT РЕГИСТРАЦИИ Это определение - его не РЕАЛЬНОГО сервис, просто ШАБЛОН! } группы администраторов notification_options ш, и, с, г; Отправлять уведомления о предупреждении, неизвестно, критическое, и события восстановления notification_interval 5; Re-извещать о проблемах обслуживания через каждые 5 минут notification_period 24x7; Уведомления могут быть отправлены в любое время регистра 0; DONT РЕГИСТРАЦИИ Это определение - его не РЕАЛЬНОГО сервис, просто ШАБЛОН! } группы администраторов notification_options ш, и, с, г; Отправлять уведомления о предупреждении, неизвестно, критическое, и события восстановления notification_interval 5; Re-извещать о проблемах обслуживания через каждые 5 минут notification_period 24x7; Уведомления могут быть отправлены в любое время регистра 0; DONT РЕГИСТРАЦИИ Это определение - его не РЕАЛЬНОГО сервис, просто ШАБЛОН! } Уведомления могут быть отправлены в любое время регистра 0; DONT РЕГИСТРАЦИИ Это определение - его не РЕАЛЬНОГО сервис, просто ШАБЛОН! } Уведомления могут быть отправлены в любое время регистра 0; DONT РЕГИСТРАЦИИ Это определение - его не РЕАЛЬНОГО сервис, просто ШАБЛОН! }
Rich J
1

голосов
2

ответ
501

Просмотры

Amazon Lambda список запущенных функций

Как я могу проверить запущенные функции лямбда-управлением с помощью AWS консоли? Кажется, что нет команды, чтобы проверить это: AWS лямбда-XXXX я несколько сценариев запуска, и я хотел бы, чтобы контролировать ситуацию. Достаточно показать, как много функций работают. Спасибо
J.R.
1

голосов
2

ответ
71

Просмотры

invoke the extension method of a class without using static class but by using class iteslf using reflection

I want invoke Method2 which is an extension method of a MyClass using MyClass type. I am wondering if this is possible or not. using System; using System.Linq; using System.Reflection; namespace ConsoleApplication9 { public static class MyClassStatic { public static void Method2(this ConsoleApp2.MyClass obj) { Console.WriteLine("You have called ex Method 2"); } } public interface IClass { void Method1(); } public class MyClass : ConsoleApp2.IClass { public void Method1() { Console.WriteLine("You have called Method 1"); } } class Program { public static void CallWhereMethod() { var whereMethods = typeof(MyClass) .GetMethods(BindingFlags.Static | BindingFlags.Public) .Where(mi => mi.Name == "Method2"); Console.WriteLine(whereMethods.Count()); // returns zero } static void Main(string[] args) { CallWhereMethod(); Console.ReadKey(); } } }
D J
1

голосов
3

ответ
53

Просмотры

Каковы ограничения на дженерики в иерархии наследования?

Предположим, что существует классы / интерфейсы иерархии: класс А {Т метод (T T) {возвращение т; }} Класс В расширяет {T метод (T T) {// метод (Т)»в '' столкновений с 'B методом (T)' в 'A'; оба метода имеют же стиранию, но ни один не перекрывает другой обратный т; }} Как мы видим, есть ошибка компилятора. Я никогда не сталкивался с правилами, как лечить дженерики, когда унаследуют. Какие существуют ограничения? (Пожалуйста, не следует путать с наследованием В самом общего типа, я спрашиваю о наследовании в исходных классах также не следует путать с «Что таким сырым типом», я знаю, необработанные тип, на этот вопрос я хочу фигуру , каковы правила наследования) также не следует путать думая, что я хочу исправить эту ошибку. Из класса Конечно B Расширяет это исправить. Мой вопрос о: "
J.J. Beam
1

голосов
2

ответ
45

Просмотры

Легкий способ удаления строк, которые имеют определенное значение

У меня есть набор данных с несколькими столбцами, и я работаю над этим, используя R. Большинство из этих столбцов есть недостающие данные, который был установлен в качестве значения -200. То, что я хочу сделать, это удалить все строки, которые имеют -200 в любой из колонок. Есть ли простой способ сделать это, кроме идя каждой колонки в то время? Могу ли я удалить все строки, значение -200 сразу? Спасибо за ваше время!
J.Doe
1

голосов
2

ответ
55

Просмотры

Ramda: Как перевести нормальное приложение к трубе или сочинить

Это новичок вопрос (я еще совсем новичок в Ramda и функциональное программирование в целом). У меня есть функция с двумя аргументами. Для простоты предположим, что это просто вычитает число. Я хочу, чтобы перевернуть и снискать его аргументы. Я понял, как сделать это вручную, но это на самом деле чувствует, как это может быть сделано с трубой или сочинить, и я не могу понять, каким образом. импорт {Карри, флип, трубы} от 'ramda'; Const вычитают = (а, б) => а - Ь; // вычитают (1, 4); -3 Const flippedCurriedSubtract = флип (Карри (вычитание)) // flippedCurriedSubtract (1) (4); 3 трубы (флип, карри, вычитание) (1) (4); // NaN Как бы вы сделать это с помощью трубы или сочинить? EDIT: труба (Карри, флип) (вычитание); // работает
J. Hesters
1

голосов
0

ответ
156

Просмотры

многократный запрос против пакетного исполнения с Mybatis весной

У меня есть один вопрос. многократный запрос против партии с mybatis в Спринг примере) Случай 1. allowmutiquery = TRUE и одного вызова вызова «mutiquery»; обновление ... набор .... случай 2. цикл несколько вызовов и пакетное выполнение для (;;) {Вызывают «партию»; } Обновления ... установлен .... что так лучше?
J.K.R
1

голосов
0

ответ
42

Просмотры

Правильный способ сделать генерацию карты в Java

Я думал о создании игры с карты больше, чем на экране, как и большинство игр с открытым миром. Вопрос я бег к тому, когда игрок хочет перейти на карте, как переместить экран или как бы я идти о правильно рендеринге новых пятен на карте. Это, как и любая игра, такие как Марио, удивительным танки 2, в основном всех плитки карты 2d игры. Так формально мой вопрос: «Как бы я идти об оказании новой части плитки карты». Вот моя точная ситуация: У меня есть текстовый файл, который содержит сетку чисел. Каждый номер представляет собой структуру и имеет свои собственные свойства. Теперь, когда я произвожу это я могу создать панель и добавить все плитки на нем и только показать 7x7 сетку. Теперь, когда игрок попадает ключи карта должна двигаться как игрок остается в центре экрана. Теперь единственный способ, которым я могу думать, чтобы сделать это, чтобы сделать все плитки сразу больше, чем сам кадр таким образом только 7x7 сетка показывает в любой момент времени и чем изменить й и у панели, содержащая все плитки. Это, кажется, действительно неэффективные существа, это рендеринг всей карты одновременно. Итак, в заключении, когда игрок двигается они должны оставаться в центре экрана и перемещать карту в фоновом режиме. А так как на заднем плане больше, что это лучший способ сделать это. Итак, в заключении, когда игрок двигается они должны оставаться в центре экрана и перемещать карту в фоновом режиме. А так как на заднем плане больше, что это лучший способ сделать это. Итак, в заключении, когда игрок двигается они должны оставаться в центре экрана и перемещать карту в фоновом режиме. А так как на заднем плане больше, что это лучший способ сделать это.
Nameis j
1

голосов
0

ответ
482

Просмотры

Как сохранить и загрузить Xgboost model.best_ntree_limit

Я использую model.save_model ( "xgb.model") и модель = xgb.Booster (model_file = 'xgb.model'), чтобы сохранить и загрузить xgboost модели. Но я обнаружил, что это не лучшая модель в процессе обучения. Итак, как сохранить лучшую модель (best_ntree_limit) и загрузить его?
j.j
1

голосов
0

ответ
347

Просмотры

Swift класс в ObjC проекте: Получатель «MySwiftClass» для класса сообщения является опережающим объявлением

Проведя несколько часов, чтобы интегрировать оперативные файлы успешно на мой основе Objective-C проект IOS, я сталкиваюсь следующий вызовом Сейчас: В одном из моего заголовка класса Objective-C (Say, MyObjCClass.h), я делаю опережающее объявление для MySwiftClass , В соответствующем файле .m я определяю экземпляр MySwiftClass _swiftClassInstance. В методе инициализации из MyObjCClass, я пытаюсь создать экземпляр его следующим образом: _swiftClassInstance = [[MySwiftClass Alloc] инициализации]; Когда я компилирую код, я получаю 2 ошибки: Получатель «MySwiftClass» для класса сообщения является опережающим объявлением приемника типа «MySwiftClass», например, сообщения является опережающим объявлением я уже сделал следующее: импортированная MyProject-Swift.h в MyObjCClass. м-файл. Маркировал быстрый класс с @objc и открытой Итак, что может быть причиной проблемы?
Harish J
1

голосов
0

ответ
45

Просмотры

Продолжая PHP код в то время как функция работает в фоновом режиме

EDIT: я должен отметить, что это для HTML-страницы. Привет экспертов, Я довольно новыми для PHP и у меня есть вопрос, который может быть относительно легко ответить. У меня есть время цикла, который содержит код, чтобы сделать вызов API и загрузить полученный JSON в некоторых переменных. Этот цикл имеет сон (5) в нем так, он проверяет каждые 5 секунд. Тем не менее, я хочу, чтобы запустить код вне цикла, а также. Как я должен подойти к этой проблеме? в то время как (TRUE) {$ = FGC json_decode (file_get_contents ($ apijson), истинные); Эхо $ последних = $ FGC [ "результат"] [ "Последний"]; Эхо $ lastlast если ($ lastlast> $ последний) { "DoStuff"}; если ($ последний> $ lastlast) { "doDifferentStuff"}; промывать(); ob_flush (); сна (5); $ Lastlast = $ в прошлом; }; если (возможно) { "doStuffHereWhileTheLoopRunsForever"; }; Большое спасибо!
J. Doe
1

голосов
2

ответ
35

Просмотры

Использование идентификаторов и значений из других мест в Спринг CrudRepository

Я учусь, как расширить CrudRepository интерфейса Spring, чтобы создать хранилище для объекта. Но у меня возникают проблемы реализации более сложных запросов, которые используют значения, не жестко закодированные. Вот надуманный пример. HQL не действует, но он показывает, что я пытаюсь сделать: импорт mypackage.DogTypeEnum; Интерфейс myRepository общественный расширяет CrudRepository {INT oldAge = 10; // года - стары для собаки @Query (ВЫБРАТЬ собака из собак собак ГДЕ dog.age> oldAge и dog.type = DogTypeEnum.poodle общественного Списка findOldPoodles ()} Таким образом, в приведенном выше примере, я пытаюсь запросить все собаки типа пуделя, которые в течение определенного порога возраста. Я не хочу жесткий код либо пудель или значение 10, так как эти значения, которые будут использоваться в другом месте в коде, а также и я хочу, чтобы избежать дублирования. Я не хочу, чтобы требовать от пользователя передать эти значения в качестве параметров либо. Есть ли способ сделать это?
J-bob
1

голосов
1

ответ
43

Просмотры

Is it possible to apply a different horizontal color gradients to each line of text using CSS

Есть несколько примеров использования горизонтального цветовой градиента к телу текста. Тем не менее, метод, используемый в каждом из этих примеров, чтобы сделать фон иметь градиент, а затем сделать текст ясным, и тогда текст будет иметь градиент. Примеры включают Можно установить горизонтальный градиент к тексту с помощью CSS? (Левая буква один цвет, справа - другой цвет) Градиент цвет текста CSS текст градиент Это не будет работать для своей цели. Я ищу, чтобы он таким образом, что там будет другой градиент для каждой строки текста. Например, строка 1 будет иметь градиент от красного до черного. Линия два будет иметь градиент от черного до синего. Линия 3 будет иметь градиент от синего до красного. Вот пример того, что я ищу: Я знаю, что радиальный градиент может быть применен также,
Patrick J Fitzgerald
1

голосов
0

ответ
128

Просмотры

OpenCV 3D очки в реальном измерить расстояние?

Я использовал стереокамеру, коррекция искажений была завершена, и диспаритет был рассчитан. После этого координаты XYZ были получены с использованием функции «reprojectImageTo3D». , Я хочу, чтобы получить фактическое расстояние от объекта. дюйм или мм, см и т.д. .... Что я должен делать? Mat хуг; reprojectImageTo3D (дисп, хуг, Q истинно); INT mousePositionX = 100; INT mousePositionY = 130; // как преобразовать реальное расстояние [mousePositionX, mousePositionY] Результат изображения
j.ah
1

голосов
2

ответ
32

Просмотры

Disallow «фона» Окно от активной WPF

Это один немного трудно объяснить, она имеет больше общего с .NET и операционной системой Windows, чем WPF, но у меня есть приложение WPF, который имеет «MainWindow», и в этом окне есть меню, такие как Файл, Правка и т.д. Если пользователь нажимает на одну из этих пунктов меню, диалоговое окно появится через метод ShowDialog (). Это работает, как я ожидаю, что это, но у меня было требование, чтобы сделать это так, чтобы пользователь не может выбрать неактивное окно на всех. Пользователь может в настоящее время, перейдя на панели задач и выбрав неактивное окно, это будет принести неактивное окно на передний план. Пользователь не сможет сделать что-нибудь, но он находится на верхней части окна, которое должно быть активным. Это даже можно исправить? Спасибо!
J-man
1

голосов
0

ответ
206

Просмотры

Иногда позволяют в TinyMCE

Как я могу настроить TinyMCE так, что она позволяет теги, такие как,, и, но не заставить их присутствовать? Иногда я хотел бы, чтобы войти в полную страницу HTML, а иногда я только хочу, чтобы ввести HTML, который существует внутри тела. По умолчанию, TinyMCE ожидает содержание в редакторе, чтобы быть в теге и срывает любые теги, например. Так что, если я введите текст результат от TinyMCE некоторый текст. Я обнаружил, что может включать в себя все эти элементы, если я использую плагин Всей страницы. Но этот плагин заставляет окружающие тег.
Justin J Stark
1

голосов
1

ответ
46

Просмотры

Bash: Appending different strings to specific lines in a file

скажем, у меня есть файл, который выглядит следующим образом: The Way Direct 5,0 0,0 3,0 2,0 0,0 0,0 0,0 0,0 1,0 0,0 0,0 2,0 3,0 4,0 6,0 0,000 1,000 2,000 1,0 2,0 3,0 4,0 5,0 6,0 3,0 2,0 0,0 я хотел бы изменить таким образом, чтобы это выглядит следующим образом: Путь прямого 5,0 0,0 3,0 U 2,0 0,0 0,0 U 0,0 0,0 1,0 U 0,0 0,0 2,0 U 3,0 4,0 6,0 U 0.000 1.000 2.000 A 1,0 2,0 3,0 4,0 5,0 6,0 3,0 2,0 0,0 A Таким образом, после того, как линии «Direct »Я„U“добавляется к следующим х строкам, а затем в строке„0.000 1.000 2.000“я добавляю„а“к этой линии, и всем тем после него. Другой способ смотреть на это, я добавить «U» в строках 4-8 и добавить «A» до 9-12. Похоже, AWK может быть лучшим способом сделать это. Я знаю, что если я использую «СЕПГ -e„s / $ / U /“, он будет добавляемых U до конца всех линий ... но есть способ сделать это для конкретных линий, а также добавить «А»? Спасибо! Редактирование: Я также попытался выбирая отдельные строки, используя патч в -n '4, 9p. Тем не менее, я не уверен, как добавить это добавление строк, как: SED -n «4,8p» | СЕПГ -e 's / $ / U /' myfile.txt. Тем не менее, что добавляет U ко всем линиям.
J. P.
1

голосов
0

ответ
13

Просмотры

Differenciate никогда не обходил тесты с регрессиями?

Какой самый лучший способ выделить неудачные тесты, которые регрессия в середине много никогда не прошло (пока) тесты? Я использую PyCharm с Python3.
Vincent J
1

голосов
1

ответ
193

Просмотры

Восстановление пароля запрос маркера GET не работает

Const = expressValidator требуется ( 'экспресс-валидатор'); Const вспышка = требуется ( 'соединение-вспышка'); Const сессия = требуется ( 'экспресс-сессии'); Const = паспортные требуется ( 'паспорт'); Const LocalStrategy = требуется ( «паспорт местного») стратегии. Const мангуст = требуется ( 'мангусты'); константное фс = требуется ( «фс»); вар приложение = экспресс (); // Порт сервера Const порт = process.env.PORT || 3000; // Сервер начиная сообщение app.listen (порт, () => {console.log ( `Сервер на порт $ {порт}`);}); // Views каталог создан и handbars двигатель hbs.registerPartials (__ Dirname + '/ просмотров / макеты') app.set ( 'вид двигателя', 'HBS'); // статические средства визуализации app.use (express.static (__ имя_директории + '/ общественное')); app.use ( '/ пользователей', express.static (__ имя_директории + '/ общественное')); приложение. использовать ( '/', панель express.static (__ имя_директории + '/ общественность')); // тело-анализатор промежуточного app.use (bodyParser.urlencoded ({продлен ложь})) app.use (bodyParser.json ()) app.use (cookieParser ()); // expressSession app.use (сессия ({секрет: 'секрет', saveUninitialized: правда, пересохраните: истинный})); // паспорт app.use (passport.initialize ()); app.use (passport.session ()); '': // expressValidator app.use (expressValidator ({errorFormatter функция (пары, тзд, значение) {вар пространство имена = param.split (), корень = namespace.shift (), formParam = корень, в то время (namespace.length ) {formParam + = '[' + namespace.shift () + ']';} возвращение {параметр: formParam, MSG: MSG, значение: значение};}})); // Подключение флэш-app.use (вспышка ()); // Global Варс app.use (функция (Req, Рез, следующая) {res.locals.success_msg = req.flash ( 'success_msg'); res.locals.error_msg = req.flash ( 'error_msg'); res.locals.error = req.flash ( 'ошибка'); res.locals.user = req.user || ноль; следующий(); }); // server.log установки промежуточного app.use ((REQ, Рез, следующая) => {вар Теперь = новая дата () ToString (); вар лог = `$ {сейчас}: $ {. Req.method} $ { req.url} `console.log (журнал); fs.appendFile ( 'server.log', журнал + \ п ', (ERR) => {если (ERR) {console.log (' Невозможно добавить к серверу .log ');}}); следующая ();}); // Маршруты константные маршруты = требуется (»./ маршруты / маршрутов); константные пользователей = требуется (»./ маршруты / пользователей); Const панели = требуется ( './ маршруты / приборная панель'); app.use ( "/"), маршруты; app.use ( "/ пользователи", пользователи); app.use ( "/ панель", приборная панель); // Получаем год для колонтитула hbs.registerHelper ( 'getCurrentYear', () => {вернуть новый Date () getFullYear ().}); - Оригинальный вопрос я пытаюсь реализовать функции сброса пароля в моем приложении с помощью следующего учебника я сделал несколько настроек, чтобы удовлетворить свои потребности и маршруты, которые я хочу, но на данный момент я получаю следующее - Вот моя текущая файловая структура и вот мой текущий код user.js модель Const экспресс = требуется ( «экспресс»); Const мангуст = требуется ( 'мангусты'); Const Bcrypt = требуется ( 'bcryptjs'); вар приложение = экспресс (); если (app.get ( 'окр') === 'производства') {mongoose.connect (process.env.DATABASE_URL, {useMongoClient: истинно}); } Еще {mongoose.connect ( 'MongoDB: // локальный / POL-развитие', {useMongoClient: истинный}); } Вар дБ = mongoose.connection; дб. на ( 'ошибка', console.error.bind (консоль, 'Ошибка соединения:')); db.once ( 'открытый', функция () {console.log ( "Соединение было установлено");}); вар UserSchema = mongoose.Schema ({schoolName: String, schoolAddress: String, schoolAddress2: String, город: String, ZipCode: String, addressCheck: Boolean, PostalAddress: String, postalCity: String, postalZipCode: String, телефон: Number, факс: Номер, адрес электронной почты: {Тип: String, требуется: правда, уникальный: истинный}, пароль: String, schoolType: String, schoolDistrict: String, schoolRegion: String, учебные программы: String, participationBefore: Boolean, participationYears: Number, directorName: String, directorTelephone: Number, directorEmail: String, directorAttendanceRehersal: Boolean, directorAttendanceEvent: Boolean, schoolLiaisonName: String, schoolLiaisonTelephone: Number, schoolLiaisonEmail: String, schoolLiaisonPosition: String, schoolLiaisonOtherPosition: String, schoolLiaisonTShirt: String, schoolLiaisonTutorMentor: String, attendanceRehersal: Boolean, attendanceEvent: Boolean, админ: Boolean}); UserSchema.pre ( 'сохранить', функция (следующий) {вар пользователь = это; вар SALT_FACTOR = 5;! Если (user.isModified ( 'пароль')) вернуться в следующем (); bcrypt.genSalt (SALT_FACTOR, функция (эээ, соль) {если (ERR) вернуться в следующем (ERR); bcrypt.hash (user.password, соль, нуль, функция (ERR, хэш) {если (ERR) возвращает следующий (ERR); user.password = хэш; следующим ( );});});}); Пользователь вар = module.exports = mongoose.model ( 'Пользователь', UserSchema); module.exports.createUser = функция (NEWUSER, обратный вызов) {bcrypt.genSalt (10, Функция (ERR, соль) {bcrypt.hash (newUser.password, соль, функция (ERR, хэш) {newUser.password = хэш; newUser.save (обратный вызов);}); }); } Module.exports.getUserByEmail = функция (электронная почта, обратный вызов) {вар запроса = {адрес электронной почты: адрес электронной почты}; User.findOne (запрос, вызов); } Module.exports.getUserById = функция (ID, обратный вызов) {User.findById (ID, обратный вызов); } Module.exports.comparePassword = функция (candidatePassword, хэш, обратный вызов) {bcrypt.compare (candidatePassword, хэш-функция (ERR, isMatch) {если (ERR) бросок ERR; обратный вызов (нуль, isMatch);}); } Users.js маршруты Const выразить = требуется ( 'экспресс'); Const маршрутизатор = express.Router (); Const = паспортные требуется ( 'паспорт'); Const nodemailer = требуется ( 'nodemailer'); константное RANDOMBYTES = требуется ( 'RANDOMBYTES'); Const = требуют асинхронного ( «» асинхр ); Const LocalStrategy = требуется ( «паспорт местного») стратегии. вар User = требуется ( '../ модели / пользователь'); // Регистрация: получить router.get ( '/ регистр', (REQ, Рез) => {res.render ( 'register.hbs', {PAGETITLE: 'Регистрация'});}); // Регистрация: запись router.post ( '/ регистре', (REQ, разреш) => {вар schoolName = req.body.schoolName; вар schoolAddress = req.body.schoolAddress; вар schoolAddress2 = req.body.schoolAddress2; вар город = req.body.city; вар ZipCode = req.body.zipCode; вар PostalAddress = req.body.postalAddress; вар postalCity = req.body.postalCity; вар postalZipCode = req.body.postalZipCode; вар телефон = req.body .telephone; вар электронная почта = req.body.email; вар пароль = req.body.password; вар schoolType = req.body.schoolType; вар schoolDistrict = req.body.schoolDistrict; вар schoolRegion = req.body.schoolRegion; вар учебный план = req.body.curriculum; вар directorName = req.body.directorName; вар directorTelephone = req.body.directorTelephone; вар directorEmail = req.body.directorEmail; вар schoolLiaisonName = req.body.schoolLiaisonName; вар schoolLiaisonTelephone = req.body.schoolLiaisonTelephone; вар schoolLiaisonEmail = req.body.schoolLiaisonEmail; вар schoolLiaisonPosition = req.body.schoolLiaisonPosition; вар schoolLiaisonTShirt = req.body.schoolLiaisonTShirt; вар schoolLiaisonTutorMentor = req.body.schoolLiaisonTutorMentor; // валидация req.checkBody ( 'schoolName', 'Название школы требуется') notEmpty (). req.checkBody ( 'schoolAddress', 'Адрес школы требуется') notEmpty (). req.checkBody ( «город», «Город требуется»). не пустой(); req.checkBody ( 'ZipCode', 'Этот почтовый код требуется') notEmpty (). req.checkBody ( 'телефон', 'Номер телефона требуется') notEmpty (). req.checkBody ( 'электронная почта', 'учетная запись электронной почты требуется') notEmpty (). req.checkBody ( «электронная почта», «Эта учетная запись электронной почты не действителен») isEmail (). req.checkBody ( 'пароль', 'пароль учетной записи требуется') notEmpty (). req.checkBody ( 'schoolType', 'Требуется тип школы') notEmpty (). req.checkBody ( 'schoolDistrict', 'Школьный округ требуется') notEmpty (). req.checkBody ( 'schoolRegion', 'Регион школы требуется') notEmpty (). req.checkBody ( 'учебный план', 'Учебный план требуется') notEmpty (). req.checkBody ( 'directorName', ' Имя директора требуется ') notEmpty (). req.checkBody ( 'directorTelephone', 'A директоры телефона не требуется') notEmpty (). req.checkBody ( 'directorEmail', 'A директора электронной почты требуется') notEmpty (). req.checkBody ( 'directorEmail', 'Этот адрес электронной почты не действителен') isEmail (). req.checkBody ( 'schoolLiaisonName', 'Школа представитель имя требуется') notEmpty (). req.checkBody ( 'schoolLiaisonTelephone', 'Школа представитель телефон требуется') notEmpty (). req.checkBody ( 'schoolLiaisonEmail', 'Школа представитель электронной почты не действителен') isEmail (). req.checkBody ( 'schoolLiaisonEmail', 'Школа представитель электронной почты требуется') notEmpty (). req.checkBody ( 'schoolLiaisonPosition', ' Школа представитель позиции требуется ') notEmpty (). req.checkBody ( «schoolLiaisonTShirt», «Школа представитель размера футболки требуется») notEmpty (). req.checkBody ( 'schoolLiaisonTutorMentor', 'Школа представитель Репетитор / наставника требуется') notEmpty (). вар ошибки = req.validationErrors (); если (ошибки) {res.render ( 'Register', {ошибок: ошибки}); } Еще {вар NEWUSER = новый пользователь ({schoolName: schoolName, schoolAddress: schoolAddress, schoolAddress2: schoolAddress2, город: город, почтовый индекс: ZipCode, PostalAddress: PostalAddress, postalCity: postalCity, postalZipCode: postalZipCode, телефон: телефон, электронная почта: электронная почта, пароль: пароль, schoolType: schoolType, schoolDistrict: schoolDistrict, schoolRegion: schoolRegion, учебный план: учебный план, directorName: directorName, directorTelephone: directorTelephone, directorEmail: directorEmail, schoolLiaisonName: schoolLiaisonName, schoolLiaisonTelephone: schoolLiaisonTelephone, schoolLiaisonEmail: schoolLiaisonEmail, schoolLiaisonPosition: schoolLiaisonPosition, schoolLiaisonTShirt: schoolLiaisonTShirt, schoolLiaisonTutorMentor: schoolLiaisonTutorMentor,}); User.createUser (NEWUSER, функция (ERR, пользователь) {если (ERR) бросок ERR; console.log (пользователь);}); req.flash ( «success_msg», «Теперь вы зарегистрированы, вы можете войти!»); res.redirect ( '/ пользователей / Войти'); }}); passport.use (новый LocalStrategy ({usernameField: 'электронная почта'}, функция (электронная почта, пароль, сделано) {User. getUserByEmail (электронная почта, функция (эээ, пользователь) {если (ERR) бросить эээ, если (пользователь) {возвращение сделано (нуль, ложь, {сообщения: 'Неизвестный адрес электронной почты'});} User.comparePassword (пароль, пользователь .password, функция (эээ, ismatch) {если (ERR) бросок эээ, если (ismatch) {возвращение сделано (нуль, пользователь);} еще {возвращение сделано (нуль, ложь, {сообщений: 'Неверный пароль'}); }});}); })); passport.serializeUser (функция (пользователь, сделано) {сделано (нуль, user.id);}); passport.deserializeUser (функция (ID, сделано) {User.getUserById (ID, функция (ERR, пользователь) {сделано (ERR, пользователь);});}); // Логин: получить router.get ( '/ Войти', (REQ, Рез) => {res.render ( 'login.hbs', {PAGETITLE: 'Войти'});}); // Логин: после router.post ( '/ Войти', паспорт. аутентификации ( 'местный', {successRedirect: '/ панель', failureRedirect: '/ Users / имя пользователя', successFlash: 'Добро пожаловать!', failureFlash: 'Неверный адрес электронной почты или пароль'}), функция (Req, Рез) {/ / res.redirect ( '/' + req.user.username); res.redirect ( '/'); }); // Сброс пароля: получить router.get ( '/ сброс-пароль', функция (Req, Рез) {res.render ( 'сброс-пароль', {PAGETITLE: 'Сброс пароля', пользователя: req.user}); }); // Сброс Password: router.post ( '/ сброс-пароль', функция (REQ, Res, следующий) {async.waterfall ([функция (сделано) {RANDOMBYTES (20, функция (ERR, ЬиЙ) {вар маркер = buf.toString ( 'шестигранной'); сделано (эээ, маркер);});}, функция (маркер, сделано) {User.findOne ({электронная почта: req.body.email}, Функция (эээ, пользователь) {если (! пользователь) {req.flash ( 'ошибка', 'Нет учетной записи с этим адресом электронной почты существует.'); вернуться res.redirect ( '/ сброс-пароль'); } User.resetPasswordToken = маркер; user.resetPasswordExpires = Date.now () + 3600000; // 1 час user.save (функция (ERR) {сделано (ERR, маркер, пользователь);}); }); }, Функция (маркер, пользователь сделал) {nodemailer.createTestAccount ((эээ, счета) => {// создать многоразовый объект транспортера с помощью SMTP по умолчанию транспорт в случае (process.env.NODE_ENV === 'производства') {Транспортер = nodemailer.createTransport ({хост: "smtp.sendgrid.net", порт: 587, авт: {пользователь: process.env.SENDGRID_USERNAME, проходят: process.env.SENDGRID_PASSWORD,}}); } Еще {Транспортер = nodemailer.createTransport ({хост: "smtp.ethereal.email", порт: 587, авт: {пользователь: '[email protected]', передать: 'A4W9HF2WbhAav263VM',}}); } // Настройка электронной почты данных с помощью Юникода символов пусть mailOptions = {из: 'password.reset' + process.env.GLOBAL_EMAIL || «[email protected]», // адрес отправителя в: user.email, // список субъекта приемниками: «Сброс пароля запрос», // Тема текстовая строка: «Вы получаете это, потому что вы (или кто-то другой ) запросил сброс пароля для учетной записи. \ п \ п «+» Пожалуйста, нажмите на следующую ссылку, или вставьте в адресную строку браузера, чтобы завершить процесс: \ п \ п «+„Http: //“+ req.headers.host +„/ сброс-пароль /“+ маркер +» \ п . \ п»+„Если вы не запрашивали это, пожалуйста, проигнорируйте это письмо и ваш пароль будет оставаться неизменным \ п“// выводит}; // отправить почту с определенного transporter.sendMail транспортного объекта (mailOptions, (ошибка, информация) => {req.flash ( «успех», «Адрес электронной почты было отправлено» + user.email + 'с дальнейшими инструкциями. '); сделано (эээ, 'сделано'); res.redirect (' / пользователи / сброс-пароль ');}); }); }], Функция (ERR) {если (ERR) возвращают следующий (ERR); res.redirect ( '/'); }); }); // Сброс пароля токена ссылку: получить router.get ( '/ сброс-пароль /: лексема», функция (Req, Рез) {User.findOne ({resetPasswordToken: req.params.token, resetPasswordExpires: {$ Gt:! Date.now ()}}, функция (эээ, пользователь) {если (пользователь) { req.flash ( 'ошибка', 'маркер сброса пароля недействителен или истек'), возвращение res.redirect ( '/ пользователи / сброс-пароль');} res.render ( '/', {пользователь: REQ. пользователя});}); }); // Сброс пароля токена: после router.post ( '/ сброс-пароль /: лексемы', функция (Req, Рез, следующий) {async.waterfall ([функция (сделано) {User.findOne ({resetPasswordToken: req.params .token, resetPasswordExpires: {$ Gt: Date.now ()}}, функция (эээ, пользователь) {если (! пользователь) {req.flash ( 'ошибка', 'маркер сброса пароля недействителен или истек') , возвращение res.redirect ( 'назад'); } User.password = req.body.password; user.resetPasswordToken = не определено; user.resetPasswordExpires = не определено; user.save (функция (ERR) {req.logIn (пользователь, функция (ERR) {сделано (ERR, пользователь);});}); }); }, Функция (пользователь, сделали) {nodemailer.createTestAccount ((эээ, счета) => {// создать многоразовый объект транспортера с помощью SMTP по умолчанию транспорт в случае (process.env.NODE_ENV === 'производства') {Транспортер = nodemailer .createTransport ({хост: "smtp.sendgrid.net", порт: 587, авт: {пользователь: process.env.SENDGRID_USERNAME, передать: process.env.SENDGRID_PASSWORD,}});} еще {транспортер = nodemailer. createTransport ({хост: "smtp.ethereal.email", порт: 587, авт: {пользователь: '[email protected]', передать: 'A4W9HF2WbhAav263VM',}}); } // Настройка электронной почты данных с помощью Юникода символов пусть mailOptions = {из: 'password.reset' + process.env.GLOBAL_EMAIL || «Be[email protected]», // адрес отправителя в: user.email, // список субъекта приемниками: «Ваш пароль был изменен», // Тема текстовая строка: «Привет, \ п \ п» + «Это подтверждение того, что пароль для вашей учетной записи» + user.email + «только что был изменен \ п.» // выводим}; // отправить почту с определенным transporter.sendMail транспортных объектов (mailOptions, (ERR) => {req.flash ( 'успех', 'Успех Ваш пароль был изменен!'.); Done (ERR); }); }); }], Функция (ERR) {res.redirect ( '/'); }); }); // Выход router.get ( '/ выход из системы', функция (Req, Рез) {req.logout (); req.flash ( 'success_msg', 'Вы вышли из!'); Res.redirect ( '/ пользователей /авторизоваться'); }); module.exports = маршрутизатор; нового пароля {{> заголовок}} {{>}} вспышка Сброс пароля Новый пароль Confirm Password Update Пароль {{> колонтитул}} Любая помощь здесь будут оценены. Что здесь ожидается После нажатия на ссылку в письме, маркер получает передается и перенаправить пользователя на страницу нового пароля, так что они могут изменить свой пароль. Не уверен, что еще попробовать здесь.
B.J.B
1

голосов
0

ответ
59

Просмотры

MIPS нагрузки трубопровода использование опасных с ответвлением

Сегодня я учусь в трубопроводе MIPS и выяснить одну интересную вещь. Видя код ниже: I1: ЛЕ $ s1, 0 ($ s3) I2: добавить $ s4, $ s5, $ нулевой I3: BEQ $ s1, $ s5, 8 Для того, чтобы уменьшить штраф отрасли, мы делаем сравнить два регистра данные в ID стадии. Делая меня запутать, что это условие является ли вид использования нагрузки опасности или нет? Имеет ли это вызвать срыв в трубопроводе? Я задаюсь вопросом, есть ли экспедиторская форма этап MEM на ID стадии, чтобы избежать трубопровода стойло в этом случае? Поскольку учебник, похоже, не говоря уже о его, и я не знаю, как работает точно MIPS, я предполагаю, что это не вызовет срыв. Благодаря Eveyone !!!
J.Hsieh
1

голосов
1

ответ
147

Просмотры

CSS подсказка не работает в WordPress HTML файл

Прямо сейчас я делаю хорошо отформатированные файлы CSS для нашего временного сайта WordPress, пока новый сайт не будет готов. После создания таблицы стилей CSS и хорошенькие HTML файлов, я обнаружил, что они не работают в WordPress, если они были рядными в посте, но вместо этого я должен был поместить их в отдельном сыром HTML файл (с помощью «Диспетчера WP File» плагин загрузить их в отдельную папку.) После того, как они отображаются на сайте соответствует то, что они выглядят как на моем жестком диске или на моем личном (LAMP) полигона (с помощью Safari 10.1.1 OS X), и если я показываю источник в моем браузере это выглядит идентично тому, что я загрузил. Затем я создал стиль всплывающей подсказки с помощью CSS следующего учебника по W3Schools. В таблице стилей я определяю «редактировать» в качестве стиля для изменения, которые я сделал в исходном тексте .edit {/ * сделанные изменения * / цвета: темно-синий; позиция: относительная; дисплей: встроенный блок; } .Edit .tooltip {размер шрифта: средняя; видимость: скрытый; цвет фона: темно-синий; белый цвет; выравнивания текста: центр; ширина: 20em; обивка: 0.5em; границы радиус: 6px; позиция: абсолютная; Z-индекс: 1; } .Edit: парения .tooltip {видимость: видимый; } Тогда (в учебнике) добавить «всплывающую подсказку» текст внутри «редактирование» текст ¶ Тогда должны быть сказаны или поются следующий Гимн. Это песнопение чаще всего используется. На моем HDD и мой персональный сайт, подсказка невидим, пока я не парить над ним, а затем он всплывает на воздушном шаре. Но когда я загрузить его на WordPress, скрытый текст всегда виден рядный, как будто стиль «всплывающую подсказку» игнорируется. Чтобы обойти эту ошибку сейчас (так что я не придется повторно редактировать HTML-файлы), Я был в состоянии отключить и скрыть все подсказки, определяя стиль подсказкой, как .edit .tooltip {видимость: скрытый; размер шрифта: 0%; } Это говорит о том, что «подсказка» в настоящее время рассматривается, но некоторые аспекты скрытой части в настоящее время анализируются по-разному на WordPress.com. Так есть некоторые C стиль или свойство, WordPress может использовать, что вызывает мой текст, который будет показано? Любой способ упреждающего переопределить с помощью CSS? Должен ли я написать JavaScript, который проходит через и вручную скрывает всплывающие подсказки? Любые эксперименты я должен попытаться сделать его уйти? PS: Это отличается вопрос в CSS подсказке не будет работать на WordPress странице, потому что мой текст отображается рядный. но некоторые аспекты скрытой части в настоящее время анализируются по-разному на WordPress.com. Так есть некоторые C стиль или свойство, WordPress может использовать, что вызывает мой текст, который будет показано? Любой способ упреждающего переопределить с помощью CSS? Должен ли я написать JavaScript, который проходит через и вручную скрывает всплывающие подсказки? Любые эксперименты я должен попытаться сделать его уйти? PS: Это отличается вопрос в CSS подсказке не будет работать на WordPress странице, потому что мой текст отображается рядный. но некоторые аспекты скрытой части в настоящее время анализируются по-разному на WordPress.com. Так есть некоторые C стиль или свойство, WordPress может использовать, что вызывает мой текст, который будет показано? Любой способ упреждающего переопределить с помощью CSS? Должен ли я написать JavaScript, который проходит через и вручную скрывает всплывающие подсказки? Любые эксперименты я должен попытаться сделать его уйти? PS: Это отличается вопрос в CSS подсказке не будет работать на WordPress странице, потому что мой текст отображается рядный.
J. West
1

голосов
0

ответ
56

Просмотры

C - Получить байт беззнаковых Int

Мне нужно байты файла BIN преобразуется в беззнаковое Int, в этом формате (JavaScript): p.write4 (shellcode.add32 (0x00000000), 0x00000be9); p.write4 (shellcode.add32 (0x00000004), 0x90909000); p.write4 (shellcode.add32 (0x00000008), 0x90909090); p.write4 (shellcode.add32 (0x0000000C), 0x90909090); p.write4 (shellcode.add32 (0x00000010), 0x0082b955); p.write4 (shellcode.add32 (0x00000014), 0x8948c000); p.write4 (shellcode.add32 (0x00000018), 0x415741e5); p.write4 (shellcode.add32 (0x0000001c), 0x41554156); p.write4 (shellcode.add32 (0x00000020), 0x83485354); p.write4 (shellcode.add32 (0x00000024), 0x320f18ec); p.write4 (shellcode.add32 (0x00000028), 0x89d58949); p.write4 (shellcode.add32 (0x0000002c), 0x64b948c0); p.write4 (shellcode.add32 (0x00000030), 0x77737069); p.write4 (shellcode.add32 (0x00000034), 0x49000000); p.write4 (shellcode.add32 (0x00000038), 0x4120e5c1); p.write4 (shellcode.add32 (0x0000003c), 0x000200bc); p.write4 (shellcode.add32 (0x00000040), 0xc5094900); p.write4 (shellcode.add32 (0x00000044), 0xd0b58d4d); p.write4 (shellcode.add32 (0x00000048), 0x49ffcf14); p.write4 (shellcode.add32 (0x0000004c), 0x8a509d8d); p.write4 (shellcode.add32 (0x00000050), 0x81490003); p.write4 (shellcode.add32 (0x00000054), 0x030b50c5); p.write4 (shellcode.add32 (0x00000058), 0x868d4901); p.write4 (shellcode.add32 (0x0000005c), 0x001d18d0); p.write4 (shellcode.add32 (0x00000060), 0x00c68149); p.write4 (shellcode.add32 (0x00000064), 0x48001d17); p.write4 (shellcode.add32 (0x00000068), 0x48c04589); p.write4 (shellcode.add32 (0x0000006c), 0xad0000a1); p.write4 (shellcode.add32 (0x00000070), 0x000000de); p.write4 (Шеллкод. add32 (0x00000074), 0x45894800); p.write4 (shellcode.add32 (0x00000078), 0x888948c8); p.write4 (shellcode.add32 (0x0000007c), 0x000000e0); p.write4 (shellcode.add32 (0x00000080), 0xf080c748); p.write4 (shellcode.add32 (0x00000084), 0x00000000); p.write4 (shellcode.add32 (0x00000088), 0x48000000); p.write4 (shellcode.add32 (0x0000008c), 0x00f880c7); p.write4 (shellcode.add32 (0x00000090), 0x00000000); p.write4 (shellcode.add32 (0x00000094), 0x1aeb0000); p.write4 (shellcode.add32 (0x00000098), 0x00841f0f); p.write4 (shellcode.add32 (0x0000009c), 0x00000000); p.write4 (shellcode.add32 (0x000000a0), 0x4cee894c); p.write4 (shellcode.add32 (0x000000a4), 0x8b48ff89); p.write4 (shellcode.add32 (0x000000a8), 0xd0ffc045); p.write4 (shellcode.add32 (0x000000ac), 0x01ec8341); p.write4 (shellcode.add32 (0x000000b0), 0x02ba2774); p.write4 (shellcode.add32 (0x000000b4), 0x4c000000); p.write4 (shellcode.add32 (0x000000b8), 0x80bfee89); p.write4 (shellcode.add32 (0x000000bc), 0x41000001); p.write4 (shellcode.add32 (0x000000c0), 0x8d48d6ff); p.write4 (shellcode.add32 (0x000000c4), 0x00006f3d); p.write4 (shellcode.add32 (0x000000c8), 0xc7894900); p.write4 (shellcode.add32 (0x000000cc), 0x31c68948); p.write4 (shellcode.add32 (0x000000d0), 0x4cd3ffc0); p.write4 (shellcode.add32 (0x000000d4), 0x75c87d39); p.write4 (shellcode.add32 (0x000000d8), 0xe43145c7); p.write4 (shellcode.add32 (0x000000dc), 0xc8758b48); p.write4 (shellcode.add32 (0x000000e0), 0x5f3d8d48); p.write4 (shellcode.add32 (0x000000e4), 0x31000000); p.write4 (shellcode.add32 (0x000000e8), 0x0fd3ffc0); p.write4 (shellcode.add32 (0x000000ec), 0x0000441f); p.write4 (Шеллкод. add32 (0x000000f0), 0x0000a148); p.write4 (shellcode.add32 (0x000000f4), 0x0000dead); p.write4 (shellcode.add32 (0x000000f8), 0x89440000); p.write4 (shellcode.add32 (0x000000fc), 0x3d8d48e6); p.write4 (shellcode.add32 (0x00000100), 0x0000005c); p.write4 (shellcode.add32 (0x00000104), 0x20148b4a); p.write4 (shellcode.add32 (0x00000108), 0x08c48349); p.write4 (shellcode.add32 (0x0000010c), 0xd3ffc031); p.write4 (shellcode.add32 (0x00000110), 0x80fc8149); p.write4 (shellcode.add32 (0x00000114), 0x75000001); p.write4 (shellcode.add32 (0x00000118), 0x3d8d48d7); p.write4 (shellcode.add32 (0x0000011c), 0x00000060); p.write4 (shellcode.add32 (0x00000120), 0xd3ffc031); p.write4 (shellcode.add32 (0x00000124), 0x18c48348); p.write4 (shellcode.add32 (0x00000128), 0x415bc031); p.write4 (shellcode.add32 (0x0000012c), 0x415d415c); p.write4 (shellcode.add32 (0x00000130), 0x5d5f415e); p.write4 (shellcode.add32 (0x00000134), 0x909090c3); p.write4 (shellcode.add32 (0x00000138), 0x6f6c6c41); p.write4 (shellcode.add32 (0x0000013c), 0x30203a63); p.write4 (shellcode.add32 (0x00000140), 0x786c2578); p.write4 (shellcode.add32 (0x00000144), 0x624f000a); p.write4 (shellcode.add32 (0x00000148), 0x7463656a); p.write4 (shellcode.add32 (0x0000014c), 0x6d754420); p.write4 (shellcode.add32 (0x00000150), 0x78302070); p.write4 (shellcode.add32 (0x00000154), 0x0a786c25); p.write4 (shellcode.add32 (0x00000158), 0x00000000); p.write4 (shellcode.add32 (0x0000015c), 0x00000000); p.write4 (shellcode.add32 (0x00000160), 0x6265443c); p.write4 (shellcode.add32 (0x00000164), 0x203e6775); p.write4 (shellcode.add32 (0x00000168), 0x656a624f); p.write4 (Шеллкод. add32 (0x0000016c), 0x2b207463); p.write4 (shellcode.add32 (0x00000170), 0x25783020); p.write4 (shellcode.add32 (0x00000174), 0x3a783330); p.write4 (shellcode.add32 (0x00000178), 0x25783020); p.write4 (shellcode.add32 (0x0000017c), 0x000a786c); p.write4 (shellcode.add32 (0x00000180), 0x6265443c); p.write4 (shellcode.add32 (0x00000184), 0x203e6775); p.write4 (shellcode.add32 (0x00000188), 0x7473754a); p.write4 (shellcode.add32 (0x0000018c), 0x726f4620); p.write4 (shellcode.add32 (0x00000190), 0x7468203a); p.write4 (shellcode.add32 (0x00000194), 0x3a737074); p.write4 (shellcode.add32 (0x00000198), 0x77772f2f); p.write4 (shellcode.add32 (0x0000019c), 0x6f792e77); p.write4 (shellcode.add32 (0x000001a0), 0x62757475); p.write4 (shellcode.add32 (0x000001a4), 0x6f632e65); p.write4 (shellcode.add32 (0x000001a8), 0x61772f6d); p.write4 (shellcode.add32 (0x000001ac), 0x3f686374); p.write4 (shellcode.add32 (0x000001b0), 0x4a563d76); p.write4 (shellcode.add32 (0x000001b4), 0x6d6c5247); p.write4 (shellcode.add32 (0x000001b8), 0x4c6c6133); p.write4 (shellcode.add32 (0x000001bc), 0x00000a59); Я предполагаю, что первые шестигранный в add32 является счетчиком, и последним шестигранным являются байтами файла. Я сделал небольшую концепцию для этого, но он не работает правильно. Обратите внимание, что этот код не для производственных целей. #include INT основных (недействительными) {FILE * F = Еореп ( "загрузчик", "RB"); FSEEK (е, 0, SEEK_END); INT S = ftell (е); перемотка назад (е); FILE * о = Еореп ( "loader.txt", "термометр"); Int я; для (я = 0; я <с / 4; я ++) {беззнаковое целочисленное значение и; Fread (& и, SizeOf (и), 1, е); fprintf (о, «p.write4 (Шеллкод. 0xec8348f6); p.write4 (shellcode.add32 (0x0000000e), 0x858d4848); p.write4 (shellcode.add32 (0x0000000f), 0x00286cf0); p.write4 (shellcode.add32 (0x00000010), 0x50998d48); p.write4 (shellcode.add32 (0x00000011), 0x4800038a); p.write4 (shellcode.add32 (0x00000012), 0x20244489); p.write4 (shellcode.add32 (0x00000013), 0xd0a18d4c); p.write4 (shellcode.add32 (0x00000014), 0x310005a9); p.write4 (shellcode.add32 (0x00000015), 0x28bf48c0); p.write4 (shellcode.add32 (0x00000016), 0x0926204b); p.write4 (shellcode.add32 (0x00000017), 0x4c000000); p.write4 (shellcode.add32 (0x00000018), 0x71b8ad8b); p.write4 (shellcode.add32 (0x00000019), 0xd3ff01fe); p.write4 (shellcode.add32 (0x0000001a), 0x8948c031); p.write4 (shellcode.add32 (0x0000001b), 0x50bf48ee); p.write4 (shellcode.add32 (0x0000001c), 0x0926204b); p.write4 (shellcode.add32 (0x0000001d), 0xff000000); p.write4 (Шеллкод. add32 (0x0000001E), 0x468b49d3); Проблема этого кода, он не отображает первый гекс (The add32 один) правильно, как и в первом примере кода. Как это сделать так же, как и в первом примере кода? Любая помощь абсолютно ценится!
J. Doe
1

голосов
1

ответ
37

Просмотры

Сравнение два SQL таблиц для уникальных клеток и обновление основной таблицы

Я использую SQL Server 2017, и я пытался выяснить это в течение нескольких часов. Моя цель состоит в том, чтобы сравнить 2 таблицы и только вставить новые строки на основе УНИКАЛЬНЫХ клеток. Все столбцы имеют идентификационный номер, но я не назначил первичный ключ. Моя цель состоит в том, чтобы только добавить дополнительные строки, содержащие UNIQUE клетки, если ни один из критериев матча. Это как мои таблицы настройки в настоящее время. Старый-Data (Имя таблицы является Test1) FName LNname Адрес Город Zipcode Телефон Phone2 ID Frank Smith 444 Main Y'All TX 77484 281-788-9898 NULL 1 Thomas Parker 343 Tire Y'all TX 77484 281-788-5453 NULL 2 Бен Krull 232 колеса Y» все TX 77484 281-788-9535 NULL 3 New-Data (Имя таблицы является Test2) FName LNname Адрес Город Zipcode Телефон Phone2 ID Frank Smith 444 Main Y'all TX 77484 281-788-9898 NULL 1 Thomas Parker 343 шин Y» все Техас 77484 281-788-5453 NULL, 2 Бен Крулл 232 колеса Y'all TX 77484 281-788-9535 NULL, 3 Хуан Роберто 444 Газ Y'all TX 77484 281-788-3434 NULL, 4 Бен Крулл 232 колеса Y'all TX 77484 281-788-9535 713-545-4353 5 Как вы можете видеть, идентификаторы 1,2 и 3 одинаковы в обеих таблицах. ID-4 представляет собой совершенно уникальный ряд, как ID-5 из-за записи PHONE2. Я нашел некоторый код и изменить его немного, чтобы соответствовать заголовкам я заботиться о нем, чтобы помочь мне определить, какие элементы являются дубликатами или нет. Это код, который был сводит меня с ума. ВСТАВИТЬ TEST1 (имя, Last_Name, адрес, город, штат, zip_code, Телефон, Phone2) ВЫБРАТЬ имя, Last_Name, адрес, город, штат, zip_code, телефон, Phone2 ОТ TEST2 ГДЕ TEST2.NAME не в (выберите имя из test1) И TEST2.Address не в (выберите адрес из test1) И TEST2.City не в (выбрать город из test1) И TEST2.State не в (выбрать государство от test1) И TEST2.Zip_Code не в (выберите zip_code от test1) И TEST2. Телефон не в (выбрать телефон от test1) и TEST2.Phone2 не в (выберите pHONE2 от test1) Я пытаюсь соответствовать всем полям и если уникальный CELL найден новая строка вводится в old_data таблицы. Я не вижу никаких ошибок после его выполнения, но ничего не происходит слишком. Интересно, что Если удалить весь код ниже линии, которая говорит, «WHERE TEST2.NAME не в (выберите имя из test1)» ID-4 (Juan Roberto) передается через, но ничего не происходит с ID-5. Я действительно начинаю думать, где не может быть использован для сравнения дубликатов и изменять или добавлять записи, но я могу ошибаться. Функция слияния было бы удивительным, но я счастлив только с бывшей, так как я всегда мог запустить другой сценарий, чтобы очистить таблицу для простаков. Я надеюсь, что кто-то может быть в состоянии указать мне в правильном направлении, так как у меня есть миллионы строк в разных таблицах, которые должны быть сравнены и урезано. Благодарю. м действительно начинают думать, где не может быть использована для сравнения дубликатов и изменять или добавлять записи, но я могу ошибаться. Функция слияния было бы удивительным, но я счастлив только с бывшей, так как я всегда мог запустить другой сценарий, чтобы очистить таблицу для простаков. Я надеюсь, что кто-то может быть в состоянии указать мне в правильном направлении, так как у меня есть миллионы строк в разных таблицах, которые должны быть сравнены и урезано. Благодарю. м действительно начинают думать, где не может быть использована для сравнения дубликатов и изменять или добавлять записи, но я могу ошибаться. Функция слияния было бы удивительным, но я счастлив только с бывшей, так как я всегда мог запустить другой сценарий, чтобы очистить таблицу для простаков. Я надеюсь, что кто-то может быть в состоянии указать мне в правильном направлении, так как у меня есть миллионы строк в разных таблицах, которые должны быть сравнены и урезано. Благодарю. ве получили миллионы строк в различных таблицах, которые должны быть сравнены и урезано. Благодарю. ве получили миллионы строк в различных таблицах, которые должны быть сравнены и урезано. Благодарю.
J.R.
1

голосов
1

ответ
60

Просмотры

expandableListView внутри меню (ящик)

Я хотел вставить expandableListView в боковом меню после того, как я сгенерировал ListView я попытался вставить его в экземпляр expandableListView, но он говорит NullPointer здесь некоторые части кода конец Activity_main_drawer файлов Главная деятельность ListView Моделист = новый ListView (это); String [] StringArray = новый String [] { "Bright Mode", "Нормальный режим"}; ArrayAdapter modeAdapter = новый ArrayAdapter (это, android.R.layout.simple_list_item_1, StringArray); modeList.setAdapter (modeAdapter); // здесь проблема ExpandableListView expandableListView = (ExpandableListView) findViewById (R.id.expandablelisto); expandableListView.addView (Моделист); // конец java.lang.NullPointerException ошибки
j-dope
1

голосов
1

ответ
30

Просмотры

Gnuplot pm3d в сб

Это мой второй вопрос сегодня, я думал о редактировании другого с этой информацией, но проблемы, кажется, не связаны ... Так что, с этим файлом данных, и с помощью этого кода: настройке терминального Qt з = 101 размера набора квадрат набор палитры RGB 34,35,36; Набор zrange [-1.8e-5: 1.8e-5] установлено pm3d в сб множестве AutoScale исправить сделать для [I = 0: 0] {SPLOT 'itp.txt' U 1: 2: 3 каждый :: :( я * s): :( S + я * с) notitle ж pm3d} Я получаю черное изображение. Это явно не работает должным образом ... Но если я скольжу мой палец через сенсорную панель моего ноутбука в то время как в выходном интерактивном окне Qt, это образ всплывает, что я и хотел. Это, кажется, работает везде, за исключением того, когда граф соответствовать «холст». Пример 1 и пример 2. Я даже не уверен, что скольжение пальцев по сенсорной панели, а на выводе окно в Qt делает, но это, кажется, фиксируя то. И что же мне делать? Заранее спасибо! * Кварта является квартой терминала в Gnuplot
J. Doe
1

голосов
0

ответ
19

Просмотры

nginix не прослушивает порт 80

Почему ngnix не слушает порт 80? Я хочу ngnix направить весь трафик из порта 80 на порт локального хоста: 3000. Я хочу, чтобы остановить прямой прямой доступ к порту 3000 в то же время и гарантирует, что только порт 80 трафик разрешен. Мое приложение основано на сервере nuxt.js {слушать 80; server_name www.ec2-35-154-54-186.ap-south-1.compute.amazonaws.com; Местонахождение / {proxy_set_header X-Forwarded-за $ remote_addr; proxy_set_header хоста $ HTTP_HOST; proxy_pass "HTTP: // локальный: 3000"; }}
J.Doe
1

голосов
0

ответ
198

Просмотры

java-saml-core: Failed to execute goal

I just started working on this SAML project. When I run: $ mvn clean install I get the following error: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:1.1.1:enforce (enforce) on project java-saml-core: Some Enforcer rules have failed. Look above for specific messages explaining why the rule failed. -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:1.1.1:enforce (enforce) on project java-saml-core: Some Enforcer rules have failed. Look above for specific messages explaining why the rule failed. at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:213) Also on the login page, when I click login I get the below error: SEVERE: Servlet.service() for servlet [jsp] in context with path [/java-saml-tookit-jspsample] threw exception [An exception occurred processing JSP page /dologin.jsp at line 10 7: 8: 9:
J Doe
1

голосов
0

ответ
18

Просмотры

Displaying one image from multiple inserted image in php mysql pdo

My question is I want to display only one image from the multiple image uploaded in the home page and display all the images in another page. The first part of the code is for the multiple upload which works perfectly, the second part of the code is for the selection. But the image is not displaying. $file_name_all=""; for($i=0; $iconn->prepare('INSERT INTO help(name, email, phone, category, region, image, question, title, date)VALUES(:uname, :uemail, :uphone, :ucategory, :uregion, :uimage, :uquestion, :utitle, :udate)'); $stmt->bindParam(':uname', $name); $stmt->bindParam(':utitle', $title); $stmt->bindParam(':uemail', $email); $stmt->bindParam(':uphone', $phone); $stmt->bindParam(':ucategory', $category); $stmt->bindParam(':uregion', $region); $stmt->bindParam(':uimage', $file); selection code. public function needhelp(){ try{ $stmt = "SELECT help_id, name, image, question, date FROM help ORDER BY help_id DESC"; $result = $this->conn->query($stmt); $result->execute(); return $row = $result->fetchAll(); } catch(PDOException $e){ echo "query error" . $e->getMessage(); } }
J. Roberts
1

голосов
2

ответ
106

Просмотры

CRATE DB: ГДЕ В на результатах временной метки данных в NullPointerException

Следующий выбор не работает: SELECT * FROM "MySchema" "расписание" ГДЕ "start_time" в (1519705800000, 1519710840000, 1519705800000, 1519718400000) start_time является столбец временной метки.. Клеть отвечает: Ошибка! SQLActionException [UnhandledServerException: java.lang.NullPointerException] где IN не работает на временных меток? Есть ли альтернатива? Версия клети является 2.1.6.
Alex J Gr
1

голосов
0

ответ
85

Просмотры

Replace characters in a string loop and function failing

У меня есть строка хранится в виде переменной randWord. Я скрытие randWord с серией пустых пространств с помощью петли. вар tempSpace = ''; для (вар я = 0; я <randWordLngth; я ++) {tempSpace = tempSpace + ___ '; } Пользователь пытается угадать скрытое слово. Догадки сохраняются в переменной строке называется UserInput. Я создал эту функцию, чтобы заменить пустые пятна с правильным пользовательским угадываются буквы. String.prototype.replaceAt = функция (индекс, замена) {вернуть this.substr (0, индекс) + замена + this.substr (индекс + replacement.length); } Мне нужно вызвать функцию и распечатать правильно угадать слова в нужном индексе, но оставить unguessed слова пустым. Я пытался возбудить это с другим контуром, но я получаю сообщение о неверном синтаксисе. wordPosition = tempSpace.replaceAt (позиции, UserInput); если (! wordPosition = '___ ') {для (вар I = 0; я <randWordLngth; я ++) {tempSpace = tempSpace +' ___'; . $ ( '# WordBox') HTML (wordPosition)}} Для того, чтобы узнать, что индекс пользователя догадывался символ я создал функцию функции getAllIndexes (слово, вал) {позиция = []; для (я = 0; г <word.length; я ++) {если (слово [I] === Val) {positions.push (я); console.log ( «положение буквы (ы)» + позиция); }}} Я называю это так: getAllIndexes (randWord, UserInput); Вы можете увидеть пример сбоя в ПОС. Скрытое слово галерея и пользователь (я) угадали «л». Он должен был напечатан символ л дважды в индексе 2 и 3. я ++) {tempSpace = tempSpace + ___ '; . $ ( '# WordBox') HTML (wordPosition)}} Для того, чтобы узнать, что индекс пользователя догадывался символ я создал функцию функции getAllIndexes (слово, вал) {позиция = []; для (я = 0; г <word.length; я ++) {если (слово [I] === Val) {positions.push (я); console.log ( «положение буквы (ы)» + позиция); }}} Я называю это так: getAllIndexes (randWord, UserInput); Вы можете увидеть пример сбоя в ПОС. Скрытое слово галерея и пользователь (я) угадали «л». Он должен был напечатан символ л дважды в индексе 2 и 3. я ++) {tempSpace = tempSpace + ___ '; . $ ( '# WordBox') HTML (wordPosition)}} Для того, чтобы узнать, что индекс пользователя догадывался символ я создал функцию функции getAllIndexes (слово, вал) {позиция = []; для (я = 0; г <word.length; я ++) {если (слово [I] === Val) {positions.push (я); console.log ( «положение буквы (ы)» + позиция); }}} Я называю это так: getAllIndexes (randWord, UserInput); Вы можете увидеть пример сбоя в ПОС. Скрытое слово галерея и пользователь (я) угадали «л». Он должен был напечатан символ л дважды в индексе 2 и 3. HTML (wordPosition)}} Для того, чтобы узнать, что индекс пользователя догадывался символ я создал функцию функции getAllIndexes (слово, вал) {позиция = []; для (я = 0; г <word.length; я ++) {если (слово [I] === Val) {positions.push (я); console.log ( «положение буквы (ы)» + позиция); }}} Я называю это так: getAllIndexes (randWord, UserInput); Вы можете увидеть пример сбоя в ПОС. Скрытое слово галерея и пользователь (я) угадали «л». Он должен был напечатан символ л дважды в индексе 2 и 3. HTML (wordPosition)}} Для того, чтобы узнать, что индекс пользователя догадывался символ я создал функцию функции getAllIndexes (слово, вал) {позиция = []; для (я = 0; г <word.length; я ++) {если (слово [I] === Val) {positions.push (я); console.log ( «положение буквы (ы)» + позиция); }}} Я называю это так: getAllIndexes (randWord, UserInput); Вы можете увидеть пример сбоя в ПОС. Скрытое слово галерея и пользователь (я) угадали «л». Он должен был напечатан символ л дважды в индексе 2 и 3. + позиция); }}} Я называю это так: getAllIndexes (randWord, UserInput); Вы можете увидеть пример сбоя в ПОС. Скрытое слово галерея и пользователь (я) угадали «л». Он должен был напечатан символ л дважды в индексе 2 и 3. + позиция); }}} Я называю это так: getAllIndexes (randWord, UserInput); Вы можете увидеть пример сбоя в ПОС. Скрытое слово галерея и пользователь (я) угадали «л». Он должен был напечатан символ л дважды в индексе 2 и 3.
J.G.Sable
1

голосов
0

ответ
55

Просмотры

Переходя к аутентификации куки условно двух сайтов на различных веб-серверов

Итак, у меня есть два места, которые могут быть доступны из одной и той же линии, основанных на состоянии я буду называть «Состояние» от моего основного сайта: если (условие) {разрешение = истина; window.location.href = 'HTTP: // site1 CID =' + CtxCID; вернуть; Пункт назначения = «сайт1»; } Еще {разрешение = истина; window.location.href = "HTTP: // site2 CID =? + CtxCID; вернуть; Пункт назначения = «сайт2»; } Эти сайты на отдельно серверах. Сайт 1 находится на сервере, отличном сайте 2 и основного сайта, которые оба на том же сервере. Сайт 1 и 2 сайта в основном идентичны: разница строка подключения к базе данных. Мой главный сайт использует куки аутентификации, чтобы гарантировать, что пользователь остается зарегистрированным в том, когда вы переносите к площадке 2: Private Sub AddAuthCookie (ByVal пользователя As String) FormsAuthentication. Однако, печенье не может держать меня в системе, когда я иду на сайт 1. Итак, мой вопрос: Есть ли кто-нибудь с большим опытом работы с печеньем, чем меня есть идея, что здесь происходит? Имейте в виде, что я унаследовал этот сайт от кого-то: отношения между основным сайтом и сайтом-уже было установлено. Я могу предоставить больше фрагментов моего кода, если это необходимо. Просто спроси! UPDATE: Ключи машины устанавливается фиксированный, и одинаковы во всех трех местах. Pic печенья панели: Клавиши машин устанавливаются фиксированными, и одинаковы во всех трех местах. Pic печенья панели: Клавиши машин устанавливаются фиксированными, и одинаковы во всех трех местах. Pic печенья панели:
J. Falter
1

голосов
3

ответ
675

Просмотры

Как извлечь город, штат из колонки в панд dataframe?

Я работаю на необработанных данных и пытается извлечь город, штат из столбца адреса. Адрес ххх Ричардсон, TX YYY Plano, TX XXYY Уайли, TX WO-65758 ZZZ Waxahachie, TX WO-999786 Я использовал разделив последние два элемента в столбце, но как идти о данных, как 3-й и 4-й строке в огромном наборе данных содержащий 30k записи?
Aruna J
1

голосов
1

ответ
73

Просмотры

Генерация случайного идентификатора по форме экономии мангуста

Так что я в настоящее время имеют форму, прикрепленную к идентификатору пользователя, однако, когда я заполнить форму случайный идентификатор получает генерируемый поэтому форма фактически не привязываясь к идентификатору пользователя так, когда использование восходит к их форме информация не является там, потому что сохраняется в новом идентификатору, а не user.id. Вот некоторые детали коды // формы конкуренции router.get ( '/ панель / пользователи / форма / конкурс-форма /: идентификатор', ensureAuthenticated, (REQ, Рез) => {CompetitionForm.findById (req.params.id, функция (эээ, конкуренция) {res.render ( 'приборная панель / пользователи / форма / конкурс-form.hbs', {PAGETITLE: 'конкурс Форма', конкурсы: конкурс});});}); // детали формы конкуренции размещать router.post ( '/ приборной панели / пользователей / формы / конкурс-формы /: идентификатор', (REQ, Рез) => {CompetitionForm.findOneAndUpdate (req.params.id, req.body, {upsert: истинно}, (эээ, конкуренция) => {если (ERR) {console.log ( `Ошибка сохранения данных: $ {эээ}`); вернуться res.send ( «Ошибка при сохранении данных»); } Res.redirect ( '/ приборная панель'); console.log (req.body); }); }); Идентификатор пользователя здесь 5a7c7815656fa40fb5817630 однако, когда я заполнил форму, идентификатор 5a7c7c4ed8e033da6c40d260 получил генерироваться. Не уверен, что на то, что я делаю неправильно здесь.
B.J.B
1

голосов
0

ответ
72

Просмотры

Каскадный / зависимый выпадающий список в web2py

У меня несколько проблем, пытаясь создать каскадный выпадающий список в web2py. Я следовал этому рецепту, однако, это довольно сложно для меня (а начинающий) разузнать логику позади него. http://www.web2pyslices.com/slice/show/1526/cascading-drop-down-lists-with-ajax-2 я сумел адаптировать его немного, но у меня возникают проблемы при попытке добавить дополнительные таблицы каскад / последовательность Таким образом, на данный момент у меня есть следующий код, что я пытаюсь сделать, это возвращает список значений из «tax_class» результатов на основе таблицы Выбора из «tax_phylum» таблица модель db.define_table ( «tax_kingdom» , поле ( 'имя')) db.define_table ( 'tax_phylum', поле ( 'имя', 'строка'), поле ( 'kingdom_id')) db.tax_phylum.kingdom_id.
Matthew J Watts
1

голосов
0

ответ
357

Просмотры

распечатать сгенерированный HTML с WebView

Я хочу, чтобы получить исходный HTML веб-сайта, содержание которого частично генерируемой JavaScript. Я использую Xcode 9.2 и Swift 4 и я кодирования для MacOS. Моя идея заключается в том, чтобы добавить WebKit View в моей раскадровки и зачитывает зачитать нужный идентификатор с помощью JavaScript. импорт какао класса импорта WebKit ViewController: NSViewController, WKNavigationDelegate {@IBOutlet слабый вар Webview: WKWebView! FUNC WebView (_ Webview: WKWebView, didFinish навигация: WKNavigation) {webView.evaluateJavaScript ( "document.getElementById ( 'игрок') innerHTML.toString ().", completionHandler: {(HTML: Любые ?, ошибка: Error)? -> Пустота в печатном виде (HTML)})} переопределить функ viewDidLoad () {super.viewDidLoad () webView.navigationDelegate = сам пусть URL = URL (строка: «https://www.youtube.com/watch?v=EwY6doa -0Bg» ) Пусть urlreq = URLRequest (URL: URL) webView.load (urlreq)}} К сожалению, выход по-прежнему не содержит сгенерированный источник HTML. У вас есть идея, как я могу продолжить?
Alexander J
1

голосов
1

ответ
61

Просмотры

Pass multiple params handlebars each block

Так что я пытаюсь сделать две формы информации в целях я могу получить один формирует информацию для визуализации, однако я не могу получить вторую форму, чтобы оказать необходимую информацию. Вот то, что я до сих пор. {{#each poemRegistrations}} {{schoolName}} {{competitionResults. competitionResults) {res.render ( 'приборной панели / все-poems.hbs', {PAGETITLE: 'Все стихи', poemRegistrations: poemRegistrations, competitionResults: competitionResults}); }); }); Информация формы PoemRegistration оказывает, однако я просто хочу, чтобы получить имя победителей из другой формы. Как бы я идти об этом?
B.J.B
1

голосов
1

ответ
60

Просмотры

mod_rewrite entire website to front page ONLY of new website

Теперь я написал десятки переадресовывают в свое время, некоторые с хитрым регулярным выражением, некоторыми более ручными, но сегодня, как самые простой редирект топал меня на сервере CentOS, работает Apache 2.2.3. Все, что я хотел бы сделать, это перенаправить каждый запрос на старом домене, независимо от пути и строки запроса, на первой странице только нового сайта. Вот почему, например, mod_alias Перенаправление директива не подходит, так как он добавляет путь к новому адресу. В конф файле Apache, на котором определен виртуальный сервер, у меня теперь есть DocumentRoot "/ Var / WWW / HTML / SITE_ROOT" ServerName OLD_DOMAIN.com Параметры FollowSymLinks RewriteEngine On RewriteRule ^ $ https: // NEW_DOMAIN [R = 301, L] не AllowOverride None Хотя редирект на https: // NEW_DOMAIN происходит, как и ожидалось, путь исходного запроса всегда добавляется, что приводит к 404 ошибок на новом месте. Например, посещение http://OLD_DOMAIN.com/asdf перенаправляет https://NEW_DOMAIN.com/asdf ... когда я на самом деле хочу, чтобы прийти https://NEW_DOMAIN.com/ Почему путь, добавленными , несмотря на то, что я не собирать по шаблону, и я не уточняя такой матч в пункте назначения? Есть много ответов, как это на SO уже: Apache перенаправлять на чистый URL https://stackoverflow.com/a/11590814/1738274 Но я не могу найти несоответствие сравнивая эти решения против моей собственной конфигурации. Есть идеи? ком / ASDF ... когда я на самом деле хочу, чтобы прийти https://NEW_DOMAIN.com/ Почему путь, добавленными, несмотря на то, что я не собирать по шаблону, и я не уточняя такой матч в место назначения? Есть много ответов, как это на SO уже: Apache перенаправлять на чистый URL https://stackoverflow.com/a/11590814/1738274 Но я не могу найти несоответствие сравнивая эти решения против моей собственной конфигурации. Есть идеи? ком / ASDF ... когда я на самом деле хочу, чтобы прийти https://NEW_DOMAIN.com/ Почему путь, добавленными, несмотря на то, что я не собирать по шаблону, и я не уточняя такой матч в место назначения? Есть много ответов, как это на SO уже: Apache перенаправлять на чистый URL https://stackoverflow.com/a/11590814/1738274 Но я не могу найти несоответствие сравнивая эти решения против моей собственной конфигурации. Есть идеи? т найти несоответствие сравнивая эти решения против моей собственной конфигурации. Есть идеи? т найти несоответствие сравнивая эти решения против моей собственной конфигурации. Есть идеи?
J Griffiths
1

голосов
0

ответ
63

Просмотры

Дата подталкивания Сбой После Solr Обновление до 7.2

Дата подталкивание терпит неудачу после обновления до Solr 7.2.1 от 4.9.0 Оригинал рабочего 4.9.0 URL: HTTP: // локальный: 8983 / Solr / фаска FQ = -url: HTTP * & FQ = -facet_encatname: ссылка \ -documents * & FQ = + идентификатор: док * & д {увеличить + Ь = $ dateboost + v = $ кв.кв!} & dateboost = Recip (мс (NOW / ДЕНЬ, солдате), 3.16e-11,1,1) & = * QQ: * С что адрес в 4.9.0, я получаю [numFound] => 647, в 7.2.1 я получаю [numFound] => 0. там не оценки с 7.2.1, как неты документов найдены. Сначала я попытался только сделать необходимые изменения для обновления, которые были на самом деле мало, и до сих пор разрешено мое TrieDateField. Как удалось запрос, я попытался изменить мое поле даты (солдате) к DatePointField, то DateRangeField, но безуспешно. Журналы изменений, кажется, не предлагают какой-либо намек. Я не сделал никаких изменений в RequestHandler, кроме падения подталкивания, которые не больше не поддерживаются. Я до сих пор defType edismax. Мой отлаживать = запрос для 4.9.0 начинается: {! Подталкивание Ь = $ dateboost v = $ кв.кв}! [Debug] => Array ([rawquerystring] => [QueryString] => {импульс Ь = $ dateboost v = $ кв.кв } [parsedquery] => BoostedQuery (импульс (*: *, 1.0 / (3.16E-11 * с плавающей точкой (мс ​​(Const (1518652800000), дата (солдате))) + 1.0))) [parsedquery_toString] => наддува (* : *, 1,0 / (3.16E-11 * с плавающей точкой (мс ​​(Const (1518652800000), дата (солдате))) + 1.0)) [QParser] => LuceneQParser [boost_str] => Recip (мс (сейчас / ДЕНЬ, солдате ), 3.16e-11,1,1) [boost_parsed] => org.apache.lucene.queries.function.valuesource.ReciprocalFloatFunction: 1.0 / (3.16E-11 * с плавающей точкой (мс ​​(Const (1518652800000), дата (солдате ))) + 1,0) [filter_queries] => массив ... С 7.2.1, я получаю: [Debug] => Array ([rawquerystring] => {! dotYbost контакт: dotibo контакт: dotibos контакт: dotibost контакт: dotibot контакт: dotibust контакт: dotivost) Синоним (контакт: F контакт: р) контакт: к) ~ 4) ^ 5.0 | ((CNAME: повышение CNAME: б CNAME: dateboost CNAME: v CNAME: кв.кв) ~ 4) | ((GEO_NAME: повышение GEO_NAME: б GEO_NAME: dateboost GEO_NAME: v GEO_NAME: кв.кв) ~ 4))) [parsedquery_toString] => + (((резюме: повышение резюме: Резюме б: dateboost Резюме: V Резюме: кв.кв) ~ 4 ) ^ 10,0 | ((provname: повышение provname: б provname: dateboost provname: v provname: кв.кв) ~ 4) | ((lstitle: повышение lstitle: б lstitle: dateboost lstitle: v lstitle: кв.кв) ~ 4) ^ 10,0 | ((rtdcontent: повышение rtdcontent: б rtdcontent: dateboost rtdcontent: v rtdcontent: кв.кв) ~ 4) | ((город: повышение город: B город: dateboost города: против города: кв.кв) ~ 4) ^ 2,0 | ((ltxt: увеличить ltxt: б ltxt: dateboost ltxt: v ltxt: Qq) ~ 4) ^ 3,0 | ((Синоним (контакт: контакт Ьо: BOS контакт: BOST контакт: контакт бота: бюст контакт: вост) Синоним (контакт: F контакт: р) Синоним (контакт: dYtYbost контакт: dYtibost контакт: datYbost контакт: datibo контакт: datibos контакт: datibost контакт: datibot контакт: datibust контакт: dativost контакт: dotYbost контакт: dotibo контакт: dotibos контакт : dotibost контакт: dotibot контакт: dotibust контакт: dotivost) Синоним (контакт: F контакт: р) контакт: к) ~ 4) ^ 5.0 | ((CNAME: повышение CNAME: б CNAME: dateboost CNAME: v CNAME: кв.кв) ~ 4) | ((GEO_NAME: повышение GEO_NAME: б GEO_NAME: dateboost GEO_NAME: v GEO_NAME: кв.кв) ~ 4)) [фасет-отладки] => массив ... [QParser] => ExtendedDismaxQParser ... Очевидно, что Solr сильно изменился, но от того, что я читал eDismax поддерживает все, что делает LuceneQParser, синтаксис мудрым. Я попытался добавить! Lucene, но он все еще возвращается [QParser] => ExtendedDismaxQParser Я проводил дни поиска и просматривая на выходе из отладки для всех моих тестов. В то время как я использую Solr в течение многих лет, это обновление имеет меня холодно. Любые предложения оценили. Джефф
J.L. Hill
1

голосов
0

ответ
229

Просмотры

Fair quantiles with lots of same values?

Делая анализ RFM. я хочу разделить ряды на 5. Я сделал это хорошо. Проблема заключается в том, когда я пытаюсь квантили функции 5 в частотной части разделить покупатель от «большого клиента», если они часто покупают с рангом 5, «хорошо», если они покупают вид меньше (ранг 4) и так далее, тот факт, что большое количество покупателей купили 1 раз в год делает квантили следующим образом: F = квантиль (ПАМ $ чАСТОТА Probs = SEQ (0,1,0.20)) 0% 20% 40% 60% 80% 100% 1 1 1 2 4 170 Итак, я попытался с уникальными значениями, но результат не будет рассматривать частоту людей с этой привычкой, так что это не правильно, потому, что большинство из них должно рассматриваться как хорошо. Во всяком случае, частота распределяется следующим образом:
J_p

Просмотр дополнительных вопросов