Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Парсер для команд в словарь #25

Open
dart-mih opened this issue Mar 7, 2025 · 7 comments
Open

Парсер для команд в словарь #25

dart-mih opened this issue Mar 7, 2025 · 7 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@dart-mih
Copy link
Collaborator

dart-mih commented Mar 7, 2025

Нужно сделать класс (или небольшой их набор), который будет парсить команду в мапу и делать какой-то ключ по времени к команде

@dart-mih dart-mih added the enhancement New feature or request label Mar 7, 2025
@dart-mih dart-mih added this to the 2 iteration milestone Mar 7, 2025
@yaQvadrat
Copy link
Collaborator

yaQvadrat commented Mar 7, 2025

Добавлю контекста. Сейчас есть интерфейс CommandParser, его реализует класс ChatCommandParser, интерфейс предполагает, что он возвращает кортеж из двух элементов (команду/None, словарь аргументов/None). Причем очевидно, что сначала надо выделить команду, ибо аргументы без команды не имеют смысла, поэтому кейс, где возвращаем None и какой-то словарь, где есть аргументы - абсурдный и такого быть не должно. В настоящий момент только кое-как выделяется команда, максимально кринжово, но думаю это надо переделать и по итогу хотелось бы вот чего:

  1. В ChatCommandParser можно было бы для команд задавать какой-то шаблон ожидаемых в них аргументов
  2. Аргументы могли бы парсится в словарь, где ключ это название аргумента, а значение это какой-то произвольный питоновский тип (str, int, datetime и тд)

@yaQvadrat
Copy link
Collaborator

yaQvadrat commented Mar 8, 2025

3. посмотреть, есть ли возможность парсить аргументы в произвольный ключ в словаре. К примеру, приходит запрос с аргументов --from, и хочется, чтобы его значение в словарь записалось под ключом "from_date" (требование возникло потому что при объявлении модельки со входными аргументами команды find_unanswered не получится сделать поле from, ибо это ключевое слово) снизу решили проблему поэтому не требуется

@spanwalla
Copy link
Collaborator

  1. посмотреть, есть ли возможность парсить аргументы в произвольный ключ в словаре. К примеру, приходит запрос с аргументов --from, и хочется, чтобы его значение в словарь записалось под ключом "from_date" (требование возникло потому что при объявлении модельки со входными аргументами команды find_unanswered не получится сделать поле from, ибо это ключевое слово)

А разве ключ не будет строковым типом?

@yaQvadrat
Copy link
Collaborator

  1. посмотреть, есть ли возможность парсить аргументы в произвольный ключ в словаре. К примеру, приходит запрос с аргументов --from, и хочется, чтобы его значение в словарь записалось под ключом "from_date" (требование возникло потому что при объявлении модельки со входными аргументами команды find_unanswered не получится сделать поле from, ибо это ключевое слово)

А разве ключ не будет строковым типом?

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

@spanwalla
Copy link
Collaborator

  1. посмотреть, есть ли возможность парсить аргументы в произвольный ключ в словаре. К примеру, приходит запрос с аргументов --from, и хочется, чтобы его значение в словарь записалось под ключом "from_date" (требование возникло потому что при объявлении модельки со входными аргументами команды find_unanswered не получится сделать поле from, ибо это ключевое слово)

А разве ключ не будет строковым типом?

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

А чем тогда зарезервированные слова мешают?

@yaQvadrat
Copy link
Collaborator

  1. посмотреть, есть ли возможность парсить аргументы в произвольный ключ в словаре. К примеру, приходит запрос с аргументов --from, и хочется, чтобы его значение в словарь записалось под ключом "from_date" (требование возникло потому что при объявлении модельки со входными аргументами команды find_unanswered не получится сделать поле from, ибо это ключевое слово)

А разве ключ не будет строковым типом?

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

А чем тогда зарезервированные слова мешают?

Image
ну вот такую проблему как решать? если есть решение, чтобы можно было в модельках писать атрибут from, к примеру, то может это и не надо

@spanwalla
Copy link
Collaborator

  1. посмотреть, есть ли возможность парсить аргументы в произвольный ключ в словаре. К примеру, приходит запрос с аргументов --from, и хочется, чтобы его значение в словарь записалось под ключом "from_date" (требование возникло потому что при объявлении модельки со входными аргументами команды find_unanswered не получится сделать поле from, ибо это ключевое слово)

А разве ключ не будет строковым типом?

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

А чем тогда зарезервированные слова мешают?

Image ну вот такую проблему как решать? если есть решение, чтобы можно было в модельках писать атрибут from, к примеру, то может это и не надо

Можно попробовать вот это https://stackoverflow.com/a/70584815, работает вообще или нет.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants