Pull to refresh

Выпущено еще одно дополнение управления доступом на уровне строк для Django REST Framework

Python *Django *

Вышел пакет Django-REST-Access для подключения пакета Django-Access в качестве бакенда динамического управления доступом на уровне объектов (строк) и фильтрации видимых объектов в Django REST Framework.


Django REST Framework — популярный расширяемый пакет конструирования HTTP API на основе проектов Django.


Django-Access — гибкий пакет динамического управления правами на уровне объектов (строк).

Total votes 3: ↑3 and ↓0 +3
Views 4.1K
Comments 0

Защита от spamGUARD v1.0

Lumber room
Защита от spamGUARD v1.0

Боримся спамерами до конца

imageДрузья, если честно устал чистить СПАМ комментариях, которые даже несмотря на защиту Akismet они пробиваются. Пришлось поставить более крутую капчу. Для тех кто в курсе, деятельность нашей команды именно декодирование капчи. По этому было решено поставить ReCaptcha: Особенность системы — текст не генерируется случайным образом, а берется из удаленной базы распознавания книг. Т.е. пользователь вводя код не только подтверждает что он человек, но и делает благое дело помогает распознавать сканированные книги.
У системы есть свой APIкод с помощью которого систему reCAPTCHA можно подключить к любому сайту. А так как у нас не обычный сайт ;), то на сайте имеется готовый плагин для Wordress. После установки плагин вам подскажет что нужно сгенерировать уникальные ключи для вашего блога, сделав это и немного настроив под себя ваш плагин уже готов к работе.

image

Установка:

1. Скачать файл “recaptcha.zip” и загрузить содержимое в директорию “/wp-content/plugins/”.
2. Необязательно: Изменить конфигурационные настройки в файле по своим требованиям. В коде присутствуют комментарии для помощи.
3. Активировать плагин “reCAPTCHA” на странице управления плагинами в админ панели WordPress.
4. Произвести необходимые настройки конфигурации плагина “reCAPTCHA” на странице управления настройками в админ панели WordPress.
Total votes 23: ↑12 and ↓11 +1
Views 416
Comments 31

Тестирование iOS-приложений

Development for iOS *TDD *
Sandbox
В этой статье я хочу рассказать о тестировании iOS приложений и небольшой автоматизации этого процесса.
Под катом будут рассмотрены инструменты для модульного и функционального тестирования и приведены простые примеры.
Читать дальше →
Total votes 37: ↑36 and ↓1 +35
Views 34K
Comments 14

Yandex и Mail.ru. Война началась?

Software
Многие наверняка уже слышали про замечательную политику Mail.ru в области внедрения своего программного обеспечения, в частности замечательного образца «кодотварения» Guard@Mail.Ru, с которым многие должны уже были столкнуться и лично. В частности, об этом уже неоднократно писали и на хабре (тынц и тынц). Причем, внимание было обращено не только на собственно действие софта на компьютере «жертвы», но и на особо циничные способы его распространения. Для тех, кто не особо в курсе всей полноты картины, поясню, что ситуация дошла до такого уровня, что ПО от Mail.ru начало идти в комплекте с программами совершенно сторонних, никак не связанных с ними людей и компаний. А все благодаря сомнительным сайтам, на которые я лично даже бы заходить не стал (но это не значит, что на них не заходили другие — менее подкованные пользователи).
Читать дальше →
Total votes 145: ↑99 and ↓46 +53
Views 130K
Comments 116

Настройка Guard для автоматизации Ruby on Rails разработки

Website development *Ruby *Ruby on Rails *
Tutorial
Всем привет! По моему мнению, каждый программист должен стремиться к автоматизации и оптимизации всего, что движется и еще нет. В этой статье будет рассказано о том, как автоматизировать рабочий процесс Ruby on Rails разработчика с помощью Ruby гема под названием Guard. Эта статья в первую очередь полезна Ruby разработчикам, но может пригодиться и другим.

image

Что такое Guard?


Что ж такое-то это?
Total votes 26: ↑26 and ↓0 +26
Views 17K
Comments 13

«Что нового в Swift 2?» на примерах

Programming *Development for iOS *Development of mobile applications *Swift *
Tutorial


Swift 2 сфокусировался на улучшении самого языка, взаимодействия с Objective-C и повышении производительности компилируемых приложений. Новые возможности Swift 2 представлены в 6 различных областях:

  • фундаментальные конструкции языка, такие, как enum , scoping (область действия), синтаксис аргументов и т.д.
  • сопоставление с образцом (pattern matching)
  • проверка доступности (availability checking)
  • расширения (extensions) протокола
  • управление ошибками (error handling)
  • взаимодействие с Objective-C

Я буду рассматривать новые возможности Swift 2, сопровождая их примерами, код которых находится на Github.
Читать дальше →
Total votes 30: ↑27 and ↓3 +24
Views 36K
Comments 36

«Что нового в Swift 2?» на примерах. Часть 2

Programming *Development for iOS *Development of mobile applications *Swift *
Tutorial
В первой части мы рассмотрели лишь часть новых возможностей Swift 2:

  • фундаментальные конструкции языка, такие, как enums, scoping (область действия), синтаксис аргументов и т.д.
  • сопоставление с образцом (pattern matching)
  • управление ошибками (error handling)

Во второй части мы рассмотрим оставшиеся:

  • расширения (extensions) протокола
  • проверка доступности (availability checking)
  • взаимодействие с Objective-C и С

Я буду рассматривать новые возможности Swift 2, сопровождая их примерами, код которых находится на Github.
Читать дальше →
Total votes 20: ↑16 and ↓4 +12
Views 19K
Comments 11

Guard классы — использовать или нет?

Perfect code *.NET *Designing and refactoring *C# *

На днях мне довелось делать довольно крупные изменения в одном C# проекте — удаление сторонней сборки. Самое "замечательное", что львиную долю времени я потратил на изменение мест, где использовались helper'ы из этой сборки (так сказать бонус к основной функциональности).


Helper'ы такого вида:


Guard.ArgumentNotNull(myobject, "myobject");
Читать дальше →
Total votes 17: ↑14 and ↓3 +11
Views 13K
Comments 93

Пишем Guard

Open source *Java *.NET *


Привет, Хабр! Есть несколько способов проверять аргументы на правильность. Например, для проверки на null можно использовать:


  1. if (!ReferenceEquals(arg, null)) throw…
  2. Code Contracts: Contract.Requires(!ReferenceEquals(arg, null))
  3. Guard.IsNotNull(arg, nameof(arg))

В статье я рассмотрю только третий вариант (все примеры кода — для C#, однако некоторые из них будут полезны и в Java).

Читать дальше →
Total votes 13: ↑10 and ↓3 +7
Views 5.9K
Comments 13

Angular 9. Перезапуск guard-ов текущей страницы. Trigger current route guards

Angular *
Sandbox
Столкнулся с необходимостью перезапустить guard-ы для текущей страницы, вне зависимости от того какая страница открыта.

Стандартного решения не нашел, а предлагаемые в интернете ограничиваются одной страницей. Поэтому написал своё и решил им поделиться.

Описание кейса


Страницы приложения разделяются на 3 группы:

  • Только для авторизованных пользователей
  • Только для неавторизованных пользователей
  • Для любых пользователей

Авторизоваться или выйти можно на любой странице.

Если вход/выход производится на странице с ограниченным доступом, то нужно перейти на разрешенную страницу.

Если на странице без ограничений, то нужно остаться на текущей странице.
Читать дальше →
Total votes 8: ↑8 and ↓0 +8
Views 4.7K
Comments 2