1
resposta

Como usar o like no flask-sqlalchemy

Estou tentando usar a regra de um filtro que tenho em meu formulário de busca conteúdo que começa com alguma letra ou palavra chave, porém não esta retornando o esperado função:

Tk_sms_sent.query.filter(Tk_sms_sent.message_sms_sent.like( r"'{}%'".format(dadosFormulario['mensagem']) ))#comeca com

Query que retorna usando as funções acima:

SELECT tk_sms_sent.id_sms_sent AS tk_sms_sent_id_sms_sent, tk_sms_sent.telephone_sms_sent AS tk_sms_sent_telephone_sms_sent, tk_sms_sent.message_sms_sent AS tk_sms_sent_message_sms_sent, tk_sms_sent.date_sent_sms AS tk_sms_sent_date_sent_sms, tk_sms_sent.goip_sms_sent AS tk_sms_sent_goip_sms_sent, tk_sms_sent.provider_sms_sent AS tk_sms_sent_provider_sms_sent, tk_sms_sent.id_sms_after_sent AS tk_sms_sent_id_sms_after_sent, tk_sms_sent.amount_sms_sent AS tk_sms_sent_amount_sms_sent, tk_sms_sent.check_sms_sent AS tk_sms_sent_check_sms_sent 
FROM tk_sms_sent 
WHERE tk_sms_sent.message_sms_sent LIKE %(message_sms_sent_1)s

queria que o like retornasse tipo:

LIKE 'message_sms_sent_1%'
1 resposta

Oi Silas, tudo bom?

Pra colocar a % no começo, basta trocar aqui:

de
r"'{}%'"
para
r"'%{}'"

Abraço

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software