Skip to content

Instantly share code, notes, and snippets.

View maxwellcc's full-sized avatar
💭
Segue os meus 5 centavos de contribuição

Maxwell Anderson maxwellcc

💭
Segue os meus 5 centavos de contribuição
View GitHub Profile
@maxwellcc
maxwellcc / admin.py
Created June 2, 2020 00:58
Django: apagar a ação delete do admin
def get_actions(self, request):
actions = super().get_actions(request)
if 'delete_selected' in actions:
del actions['delete_selected']
return actions
@maxwellcc
maxwellcc / util1.py
Last active September 6, 2022 12:38
XML: Processa a RPI de patentes, marcas e registros de programa de computador do INPI
# Processa patentes
def get_despachos_patentes_INPI(ip_type, Patent):
if ip_type == 'Patente':
ip_id = Patent.objects.values_list('patent_id', flat=True).filter(active=True)
if ip_id:
for despatch in doc.iterfind('despacho'):
for process in despatch.iterfind('processo-patente'):
number = process.findtext('numero')
if number in ip_id:
qtd_finded += 1
@maxwellcc
maxwellcc / readme.md
Created May 27, 2020 12:00
SSH: Servidor SSH remoto com X11 no MobaXTerm não funciona
@maxwellcc
maxwellcc / multsites.md
Created May 27, 2020 11:59
Django: Multisites em Django

Requisitos que funcionaram comigo:

  • Django 3.0.3
  • django-tenant-schemas 1.10.0 (pip install django-tenant-schemas)

Caso seja necessário criar um aplicativo Django com vários subsites, django-tenant-schemas me pareceu a melhor opção. Funciona da seguinte forma, por exemplo:

  1. Você cria um app em Django com o domínio https://meuapp.meudominio.com.br;
  2. Precisas criar várias instâncias para clientes diferentes, por exemplo https://clienteX.meuapp.meudominio.com.br e https://clienteY.meuapp.meudominio.com.br;
  3. Podes configurar esquemas de banco de dados ou mesmo instancias de banco de dados diferentes.
@maxwellcc
maxwellcc / insert_mdi_icons.sql
Created May 27, 2020 11:57
SQL: Inserindo dados relacionados aos ícones do Material Design Icons (https://materialdesignicons.com/)
INSERT INTO config_icon(name, image_mdb)
VALUES ('axis arrow info', 'mdi-axis-arrow-info'),
('baby buggy', 'mdi-baby-buggy'),
('beehive off outline', 'mdi-beehive-off-outline'),
('bell cancel', 'mdi-bell-cancel'),
('bell cancel outline', 'mdi-bell-cancel-outline'),
('bell minus', 'mdi-bell-minus'),
('bell minus outline', 'mdi-bell-minus-outline'),
('bell remove', 'mdi-bell-remove'),
('bell remove outline', 'mdi-bell-remove-outline'),
@maxwellcc
maxwellcc / model.py
Created May 27, 2020 11:54
Django: definindo valor default para campos Foreign Key
def get_symbol_default():
"""
Busca pelo ícone padrão do sistema
:return: retorna o valor default do
"""
try:
default_icon = Default.objects.first().get('default_icon')
except BaseException as error:
raise BaseException(_('Register a default icon.')) from error
return default_icon
@maxwellcc
maxwellcc / model.py
Created May 27, 2020 11:52
Django: detectando mudanças nos campos do model
def save(self, *args, **kwargs):
# Detectando mudanças em alguns campos
old = Notification.objects.filter(pk=getattr(self, 'pk', None)).first()
if old:
# Se o campo number tiver sido modificado, limpar os campos
if old.number != self.number:
self.file = None
self.download_success = False
self.download_date_time = None
@maxwellcc
maxwellcc / model.py
Last active September 6, 2022 12:40
Campo requerido condicionado no Django
class ArticleForm(forms.ModelForm):
brief_summary = forms.CharField(
widget=TinyMCE(
attrs={
'cols': 80,
'rows': 50
}
)
)
@maxwellcc
maxwellcc / model.py
Created May 27, 2020 11:49
Campo requerido condicionado
class ArticleForm(forms.ModelForm):
brief_summary = forms.CharField(
widget=TinyMCE(
attrs={
'cols': 80,
'rows': 50
}
)
)
@maxwellcc
maxwellcc / ex02.py
Created May 27, 2020 11:41
Exemplos de decoradores com argumentos
def logged(level, name=None, message=None):
def decorate(func):
logname = name if name else func.__name__
log = logging.getLogger(logname)
logmsg = message if message else func.__name__
@wraps(func)
def wrapper(*args, **kwargs):
log.log(level, logmsg)
return func(*args, **kwargs)