findAllByNameAndDepartmentAndCode method ignoring accent - #183
Open
RamonJales wants to merge 5 commits into
Open
findAllByNameAndDepartmentAndCode method ignoring accent#183RamonJales wants to merge 5 commits into
findAllByNameAndDepartmentAndCode method ignoring accent#183RamonJales wants to merge 5 commits into
Conversation
Owner
|
Não passou porque essa branch tá desatualizada com a main! |
Owner
|
Mesmo atualizado com a main os testes não passam. Problema é do que foi codado. |
RamonJales
commented
Jan 24, 2024
| List<SubjectModel> findAllByRequirements(SubjectModel requirement); | ||
| List<SubjectModel> findAllByCoRequirements(SubjectModel coRequirement); | ||
| Page<SubjectModel> findAllByNameContainingIgnoreCaseAndDepartmentContainingIgnoreCaseAndCodeContainingIgnoreCase(Pageable pageable, String name, String department, String code); | ||
| @Query("{ $or: [ { 'name': { $regex: ?0, $options: 'i' } }, { 'department': { $regex: ?1, $options: 'i' } }, { 'code': { $regex: ?2, $options: 'i' } } ] }") |
Collaborator
Author
There was a problem hiding this comment.
Erros cometidos anteriormente:
- O operador
collationusado anteriormente não era necessário. Este operador uma maneira de substituir oregexe por isso se tornava redundante. - estava sendo repetido o
?0nos três campos daqueryo que significava pegar o primeiro parâmetro do método e colocar nos campos daquery. Ou seja,name,departmentecodeera colocado no campo da busca.- Exemplo:
O que estava sendo associado a query era:findAllByNameAndDepartmentAndCode(page, "FMC", "IMD", "123");
Ao enumerarmos as interrogações:@Query("{ $or: [ { 'name': { $regex: "FMC", $options: 'i' } }, { 'department': { $regex: "FMC", $options: 'i' } }, { 'code': { $regex: "FMC", $options: 'i' } } ] }")
?0,?1e?2o spring faz a ligação correta entre os valores passados no método com aqueryde consulta. - A anotação
@paramauxilia na ligação correta entre os valores passados no método com aqueryde consulta.
zaqmarlon
requested changes
Jan 27, 2024
zaqmarlon
left a comment
Owner
There was a problem hiding this comment.
Há um problema na busca através do controller.
Se você manda qualquer coisa no partialName parece que nem é considerado. Sempre o resultado são todas as disciplinas. O backend precisa urgentemente testar o controller. Vou adicionar a issue trabalhar nisso.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Por favor, informe se a PR segue os requisitos obrigatórios:
Motivação para a criação da PR
Veja #143.
O que foi feito
collation, que permite ignorar acentos.$collation: { 'locale': 'pt', 'strength': 2 }