Bogdan
На самом деле, полезная тема так попадаться на подобные моменты, которые неявные(по крайней мере уж мне) на первый взгляд
Bogdan
Скок rest писал, вот впервые на время наткнулся
Bogdan
Спасибо за статейку и за просвещение с time
Nikhil
I am decalaring a function inside a go template. And it is giving me this error: missing ',' in parameter list I have reduced the function to just initialization, can anyone please help me in finding the mistake here: ----------------------------------------------------------------------------- func (conditions *{{ .Resource.ImportAlias }}.{{ .Resource.Kind }}Status.Conditions) SetCondition(newCondition metav1.Condition) { } ----------------------------------------------------------------------------- HELP NEEDED
Alexander
are you creating a function for template ?
Nikhil
are you creating a function for template ?
Yes, this function is stated inside a go template and when it is scaffolded in a .go file, it shows this error.
Alexander
functions are not called like that
Nikhil
functions are not called like that
I am not calling the function I am declaring it.
Nikhil
Could you please point out what issue you see here
Alexander
funcMap := template.FuncMap { "title": strings.Title, }
Alexander
<title>{{.Title | title}}</title>
Nikhil
funcMap := template.FuncMap { "title": strings.Title, }
No, I need to write the function in the go template only here. I cannot do that because of the pattern used in the source code.
Nikhil
I have written many function in the go template but unable to find the cause of the error here.
Alexander
alas, the out-of-pattern does not write a function)
Nikhil
when I remove the caller in the function, that is only keep func SetCondition(newCondition metav1.Condition) { } then no error occurs it means the issue is there only but what is it. I cannot understand.
Alexander
Or is he ignoring her?
Alexander
https://github.com/valyala/quicktemplate
Melbourne Channel
github.com/riobard/go-handlersocket can anyone do connection pooling for go-handlersocket? pls contact me and provide a quotation. thx
David
Резюмируя вчерашнюю тему: не каждый строковый символ помещается в int32. Следующий код хорошо это резюмирует, вот и вся разница.
David
const nihongo = "日本語" for index, runeValue := range nihongo { fmt.Printf("%#U starts at byte position %d\n", runeValue, index) } The output shows how each code point occupies multiple bytes: U+65E5 '日' starts at byte position 0 U+672C '本' starts at byte position 3 U+8A9E '語' starts at byte position 6
Юра (Юрий Александрович)
Резюмируя вчерашнюю тему: не каждый строковый символ помещается в int32. Следующий код хорошо это резюмирует, вот и вся разница.
🤔 утверждение правильное, иллюстрация неправильная. int32 - это 4 байта, а символы в примере занимают по 3 байта. 3 байта в 4 байта-то бы поместились же.
David
🤔 утверждение правильное, иллюстрация неправильная. int32 - это 4 байта, а символы в примере занимают по 3 байта. 3 байта в 4 байта-то бы поместились же.
Да, пардон, другое хотел сказать, потому что иначе может быть коллапс, который следует из утверждения. Итерация идёт по байтам, а range по рунам.
Алексей
//Создай функцию для создания слайса на снове дженериков со случайными данными: func randomSliceGeneric[T uint32 | uint64](n int, t T) []T { var mas []T for i := 0; i < n; i++ { mas = append(mas, rand.Intn(100)) } return mas } Подскажите как сделать вставку случайной величины нужного типаа?
Илья
mas := make([]T, n)
Илья
можно использовать rand.Read(mas) из пакета crypto/rand
Алексей
можно использовать rand.Read(mas) из пакета crypto/rand
Пишет такое: cannot use mas (variable of type []T) as type []byte in argument to rand.Read
Илья
а, точно
Алексей
Вроде, простая задачка, а уже пару часов сижу )
Алексей
Вот они дженерики)
Алексей
//Создай функцию для создания слайса на снове дженериков со случайными данными: func randomSliceGeneric[T comporable](n int, t T) []T { //var mas []T mas := make([]T, n) for i := 0; i < n; i++ { mas = append(mas, T(rand.Intn(100))) } return mas } Решил так. Спасибо за помощь!!!
Aziz
привет всем []rune{"Some string"}
Aziz
что делает вот это ?)
Илья
привет всем []rune{"Some string"}
[]rune("string") делает из строки слайс рун
Aziz
То есть [115 116 114 105 110 103] это порядковый номер в списке utf8 ? Правильно понимаю ?
Bogdan
Имеешь ввиду проблема с go mod?
Bogdan
У меня, когда было подобное на пет проектах(один раз просто идея вообще не тянула зависимости), я просто удалил го мод и заново инитил
Alexey
Имеешь ввиду проблема с go mod?
не, проблема с белым выделенным куском
Bogdan
То, шо подчеркнуто?
Alexey
иначе, Го мод ничего общего с проблемой не имеет
Alexey
проблема в IDE
Alexey
UPD: проблема решилось откатом на старую версию(в мак ос достаточно просто скачать старую и втупую заменить в программах и оно само подвяжется)
Bogdan
А, емае
Bogdan
Я думал с модом проблемы Сорри, тут я бессилен тогда Работаю с goland)
Alexey
скачай патч
я не работаю с голандом
Valery
я не работаю с голандом
А чё так? Религия не позволяет?
Alexey
А чё так? Религия не позволяет?
нет желания, не вижу его преемуществ для меня, хотя у меня есть лицензия даже))
Alexey
все что мне надо есть в вс коде и терминале
David
он явно про само окно
Bogdan
нет желания, не вижу его преемуществ для меня, хотя у меня есть лицензия даже))
На самом деле действительно интересно Почему для вас VsCode > Goland?
Bogdan
Ну, какие преимущества выделяете и тд Я не собираюсь дискутировать, только мнение узнать
Valery
Как я понял - человек просто не пользовался голенд, начал с вс и ему этого хватило для его нужд
Юра (Юрий Александрович)
Синдром утенка, скорее всего. Мне по этой же причине голенд нравится.
Alexey
Как я понял - человек просто не пользовался голенд, начал с вс и ему этого хватило для его нужд
я помимо го еще на много чем пишу и в вс код для меня универсальная среда и я привык к своему воркспейсу, но от их поганых обновлений руинящих все меня просто берет аж
Alexey
вместо рабочей сессии я вынужден искать как экспортировать настройки, скачивать старую версию IDE и так далее. Просто поганцы, я так с винды на линукс ушел просто что там не ставятся никакие обновления, даже не важно полезные или нет. Просто никакие
Alexey
Про Линукс та же история
даже не важно, лицензия или нет. Хотя даже если лицензионная винда, то ХУЖЕ, ты обязан по соглашению ставить обновления или как минимум не сопротивляться . По идее с пиратки то нет, но опять таки, там тот же механизм , но в лицензии у тебя как бы это формально уже регламентируется
Valery
даже не важно, лицензия или нет. Хотя даже если лицензионная винда, то ХУЖЕ, ты обязан по соглашению ставить обновления или как минимум не сопротивляться . По идее с пиратки то нет, но опять таки, там тот же механизм , но в лицензии у тебя как бы это формально уже регламентируется
У меня винда с ума сошла. На передней панели вывод наушников и микрофона перестали работать (как я думал). Потом вставил микро в наушники и наушники в микро и все заработало. А в линуксе все нормально
Bogdan
Господа, получаю время в таком (не подходящем под константы time пакета формат) 15.01.2000T08:00:00+0300. Вопрос - хочу переставить год(2000) в начало, тем самым перестроив структуру строки. Есть какие-то эстетичные варианты реализации? Первое, что пришло в голову, разбить строку по символу точки и просто год переставить в начало
Bogdan
Строю под RFC3339
🅞leksiy
Parse/Format
Maks
А ты этот формат получаешь извне или тебе нужно внутри го дату к такому формату привести?
Bogdan
func (m *MovieService) CreateMovie(title, releaseDate string) (string, error) { convertReleaseDate, err := time.Parse(time.RFC3339, releaseDate) if err != nil{ log.Fatalf("Error during parsing time, %s", err) } movie := model.Movie{ Id: 0, Title: title, ReleaseDate: convertReleaseDate, CreatedAt: time.Time{}, } m.movies = append(m.movies, movie) m.movies[len(m.movies) - 1].Id = len(m.movies) m.movies[len(m.movies) - 1].CreatedAt = time.Now() return "success", nil }
Bogdan
2022/07/14 14:52:24 Error during parsing time, parsing time "15.01.2000T08:00:00+0300" as "2006-01-02T15:04:05Z07:00": cannot parse "1.2000T08:00:00+0300" as "2006"
Bogdan
Щас вот проснулся, проблемку решил
Bogdan
Просто хочу эстетично сделать, а не через сплит
Илья
разбивать вручную и менять местами не очень эстетично))