der ðiβüśüɾę
Проверяй на nil а не null
Хорошо, спасибо
der ðiβüśüɾę
len(os.Args)
Вот тут не понял
🔥
Много непонятных слов := сложно
Ты же сказал ты с плюсов) что там не понятного?)
der ðiβüśüɾę
Ты же сказал ты с плюсов) что там не понятного?)
Я и плюсы не особо углублённо изучал
der ðiβüśüɾę
Ан нет. Всё правильно было
🔥
По моему len(os.Args) >= 0. Разве не так?
Ты же панику вызвать хочешь если агров нет?) или если есть)
Alexander
len(os.Args) > 1
Alexander
Общепринято, что нулевой аргумент это имя по которому приложение запустили
der ðiβüśüɾę
len(os.Args) > 1
Наверное даже так
der ðiβüśüɾę
Мне нужно узнать есть ли первый арг
der ðiβüśüɾę
А не нулевой
der ðiβüśüɾę
Потому что нулевой есть всегда
Maks
Потому что нулевой есть всегда
Если ты писал на других языках то не должно быть сложностей)
der ðiβüśüɾę
А ещё: как проверять значение os.Args[1], допустим: os.Args = ['./gen', '--help'], как мне в if засунуть то, что типа "Если os.Args[1] = "help" или "--help" или "-h", то .."
Maks
В аргах их нет
if len(os.Args) > 1 значит аргументы есть
Maks
А если тебе нужно получить кей валью то есть флаги вроде
Maks
И там у тебя уже пары будут
der ðiβüśüɾę
if len(os.Args) > 1 значит аргументы есть
Значит есть как минимум второй арг, а он не подразумивается
Maks
Потому что os.args это сплит строки запуска разбитый на пробел
Maks
len os.args == 2?
Maks
Значит у тебя один аргумент
der ðiβüśüɾę
len os.args == 2?
Нет, len os.args == 1
der ðiβüśüɾę
Потому что 0 это название файла
Maks
Нет, len os.args == 1
если len(os.args) == 1 значит у тебя НЕТ АРГУМЕНТОВ ЗАПУСКА
Maks
ты же можешь сделать for i, v in os.args { fmt.Println(v) }
der ðiβüśüɾę
Массив начинается с нуля
Maks
А что тебе len возвращает?
Maks
ты вообще программировал раньше?
Maks
Maks
у тебя функция len возвращает длину массива а не какой то конкретный элемент
Maks
по этому если len(os.args) == 1 значит у тебя НЕТ АРГУМЕНТОВ ЗАПУСКА
Maks
Ну это же даже звучит логично
Maks
И тем более массив это аргс
Maks
А лен звучит как длина
der ðiβüśüɾę
🔥
Вообще, чтоб консольные прилы писать уже есть мощные библы)
🔥
Такс, а кто юзает джин и его дефолтный хтмл рендерер, я чет давно не юзал и сейчас после попытки ругается при попытке достать поля структуры, говорит что то к чему я обращаюсь это интерфейс) Вопрос - что то менялось за последний год в джине или хтмл движке который он юзает?
🔥
А то чет уже минут 30 головой об стену стучусь не понимаю что происходит)
Emil
А как достаешь поля?
🔥
{{ .struct.foo.bar }}
🔥
Передаю этот структ в джин h как и раньше
🔥
Попробовал мапу передать, его поля он видит и не ругается что там интерфейс
🔥
Какой то бред
Emil
Для функций надо прописать, что они выводят Если нужно их значение, значит они что-то выводят
Emil
(Я сейчас запутаю всех терминологией неправильной)
🅞leksiy
https://play.golang.org/p/z76KYxqCFll
Alexander
нужно на каждый запрос юзера писать в мапу по ключу время запроса. не слишком ли жирно time.Now() будет и хранить time.Time? по сути мне нужен юникс тайм, чтобы сверять периодически не слишком ли давно был запрос по определенному ключу
Maks
тебе куда нужно писать время запроса?
@name_666
t1 := time.Now() defer func() { time.Since(t1) }
Я где-то видел вариант такой. Старт=ТаймНоу. Далее код и в конце старт -таймНау
Alexander
в мапу, мне нужно по ключу перебирать не давно ли был последний запрос и очищать определенные ресурсы, если это было давно
Maks
у тебя что в мапе всегда хранится когда какой пользователь запрос делал?
Maks
Если это для тестового то ладно) если такое условие)
Alexander
некий ключ связанный с определенными ресурсами, которые надо освободить, если давно не обращались по этому ключу
Alexander
что-то вроде этого. так как бизнес логика у меня короткая и быстрая: 1. Распарсить некие параметры из урла 2. Распарсить json из тела 3. Открыть мьютекс 4. Положить куда надо 5. Закрыть мьютекс то, вот думаю как бы максимально дешево последнее время по запросу ориентируясь на определенный ключ сохранять
Вал
Ребят привет! Подскажите плиз может кто делал телеграм ботов, надо запросить у пользователя информацию - типо нажал юзер на кнопку заказать - мне надо у него адресс доставки спросить, есть вопрос по реализации, Сейчас я написал так: после запроса о заказе - получаю update.message.text - и парсю от туда адрес - но мне что то не очень нравится, может есть какой то метод специально для таких случаев (запрос и обработка ответа от юзера)? В доке telegram-bot-api что то ничего не нахожу. Буду благодарен если кто то меня тыкнет носом в такое. Или все же я зря загоняюсь и так это все и делают?
Вал
но именно руками информацию запросить - не нашел(
Alexander
Через редис с ттл?
Ты чо, редис дорогой, тем более я сам не сильно от редиса по смыслу отличаюсь в том случае
Emil
но именно руками информацию запросить - не нашел(
Там в ботоотце можно попробовать поиграться с разрешениями на работу с банками и подобное, мб что и появится, но не факт....а так хз
Вал
Emil
не я до банка еще не дополз, мне пока по простому прост запросить инфу и в бд добавить
Тогда мне кажется максимум можно сделать красивую менюшку для юзера(я кстати хз как если умеете, покажите), а заменить апдейт текста на что-то круче вероятно нельзя(но вдруг кто знает...) В тг ещё есть беседа по этой либе, можно там спросить
Вал
ну тип у меня сейчас для тестирования просто кнопки под полем ввода, видел есть еще свойство в инлайн кейборд - как я понимаю - єто поле в чате
Вал
но честно - с ботами первій раз работаю и пока не пробовал что там за инлайн метод) так что я думаю я не далеко от вас барахтаюсь по знаниям
Вал
если не хуже(
Семён
привет юзаю щас либу fyneне могу получить значения из функции, которая вызывается по нажатию на кнопку, чтобы отобразить полученные там значения
Семён
как понимаете мой способ на скрине не работает
Maxim
как понимаете мой способ на скрине не работает
Все верно, в разных блоках памятипроисходит. := замени, на = для bal и acc