@proGO

Страница 1207 из 1674
Александр
06.02.2018
14:24:59
поясни
ну смотрите, сценарий поиска в классческой орм. Моделька с параметрами аля имя таблицы. Для поиска нам надо иницилизоровать пустую модельку, там вызвать поиск, для создания так-же берем пустую модельку. В результате модель пораждает коллекцию моделей (в случай поиска), что немного тяжко

Aleksandr
06.02.2018
14:25:44
ничерта не понял, либо у нас с тобой разные классические орм

Александр
06.02.2018
14:25:53
я же рассматриваю двух уровневую систему, поиск и создание в "драйвере" над бд, которые в результате плодят легкие модели которые работают только с 1 записью

Aleksandr
06.02.2018
14:25:57
зачем пустые модельки?

Google
Александр
06.02.2018
14:26:19
зачем пустые модельки?
ну есть таблица users, надо создать нового пользователя..

Mykyta
06.02.2018
14:26:21
зачем пустые модельки?
Может он имеет ввиду типа Model(User{}) в горме?

Александр
06.02.2018
14:26:36
мы пораждаем сначало пустую модель юзвера, потом заполняем

у модели далее будет какой то метод аля save()

который уже проведет в бд транзакцию и заполнит примери кей например

Aleksandr
06.02.2018
14:27:33
мы пораждаем сначало пустую модель юзвера, потом заполняем
ну да, в го создание инстанса структуры только так

дальше

Александр
06.02.2018
14:28:02
а поиск?

опять пораждаем пустую модель, у которой есть метод search?

Aleksandr
06.02.2018
14:28:32
подожди. ты про AR?

Александр
06.02.2018
14:28:34
или find, не суть

да про AR

Google
Aleksandr
06.02.2018
14:29:04
я бы не сказал что AR - это классическая орм.

Александр
06.02.2018
14:29:30
я еще в пыхе с этим сталкивался, модель пораждают другие модели в поиске, так не удобно было

боль и страдания

Aleksandr
06.02.2018
14:29:51
ну если про AR, то паттерн AR традиционен и в принципе в любых языках реализован одинаково - моделька и сохраняет и ищет себя

Александр
06.02.2018
14:30:26
я вот пробую его переосмыслить

Aleksandr
06.02.2018
14:30:47
я еще в пыхе с этим сталкивался, модель пораждают другие модели в поиске, так не удобно было
ну не знаю. не везде поиск идет через создание модели. через ActiveQuery какой нибудь

создаешь инстанс квери и возвращаешь модельки

Александр
06.02.2018
14:31:59
может конечно я и перемудрил

у меня есть некие системные поля, нужные для обслуживание записи

ну для примера "имя таблицы в бд"

я не хотел их смешить в данными, и начались извращения

структура в базовом пакете, куда в свойство data подгружается уже структра пользовательская

плюс пользовательская структура (их около 6 штук) тоже имеет повторяемые поля, неплохо бы еще и базовую модель захреначить

чешу репу как это провернуть

type SystemRow struct { TableName string Data DataModelInterface } type DataModelInterface interface { ...... } ------- type BaseModel { id string 'json:id' } // Реализует DataModelInterface ------- import "BaseModel" type UserModel { BaseModel name string }

ну немного не правильно синтаксически, но идея понятно

мы когда UserModel в фабрике создаем, мы не ее отдаем напрямую, мы засовываем внутрь SystemRow

но что-то мне эта схема не ах

Aleksandr
06.02.2018
14:38:57
придумываешь ar заново. подсмотри в готовой реализации

Michael
06.02.2018
14:39:50
ar- active record?

Google
Aleksandr
06.02.2018
14:41:58
type Model struct { TableName string Attributes map[string]inteface{} } func (model) Get(attribute string) interface{} func (model) Set(attribute string, value interface{}) func (model) Save() func Find(...) ActiveQuery

что-то типа такого

Александр
06.02.2018
14:42:03
придумываешь ar заново. подсмотри в готовой реализации
честно говорят мне вообще идея не нравится в гоу городить из ооп паттерны ?

они тут не вписываются красиво

Александр
06.02.2018
14:44:39
type Model struct { TableName string Attributes map[string]inteface{} } func (model) Get(attribute string) interface{} func (model) Set(attribute string, value interface{}) func (model) Save() func Find(...) ActiveQuery
в твоем примере выше, получается что в модели идет каждый раз объявление TableName, прямо душа разрыватся когда вижу копипаст ?

охото сразу наплодить еще один слой абстракции

если в твоем примере имя таблицы станет int, то приехали. Править в 6 местах аж

(пример идиотский, но все же)

Aleksandr
06.02.2018
14:47:19
Александр
06.02.2018
14:48:55
эээм

ааа у тебя универсальная модель под все типы

Aleksandr
06.02.2018
14:49:45
у тебя

Александр
06.02.2018
14:50:12
у меня как раз нет, она наследует ?

Aleksandr
06.02.2018
14:50:23
у меня тоже. это же твоя модель

Александр
06.02.2018
14:50:29
хотя ты прав

туплю уже чутка

Aleksandr
06.02.2018
14:50:51
в AR можно наследовать, но необязательно

Александр
06.02.2018
14:51:47
ну такое честно говоря

я про мое решение

Google
Александр
06.02.2018
14:52:05
опять какие то универсальные ножи пошли

зачем так жить ?

Aleksandr
06.02.2018
14:52:49
ну так ар же

Александр
06.02.2018
14:52:59
ну такое...

Admin
ERROR: S client not available

Aleksandr
06.02.2018
14:53:06
какое есть

Александр
06.02.2018
14:53:06
я просто ничего другого не придумал

Aleksandr
06.02.2018
14:53:41
я устал думать об этом. просто делаю репозитории на голом sql и возвращаю модельки

BlackTrojan
06.02.2018
14:54:16
/stat@combot

Combot
06.02.2018
14:54:16
combot.org/chat/-1001046001048

Roman
06.02.2018
14:57:08
http://go-talks.appspot.com/github.com/mhausenblas/fosdem2018-godevroom-networkingdeepdive/main.slide#1

Michael
06.02.2018
15:25:41
зачем так жить ?
решение нужно ж, а не универсальный сферический конь)

Olzhas
06.02.2018
16:12:57
Ебанутые спамеры

Foxcool
06.02.2018
16:14:25
Это ещё норм. У нас каждый день больше десятка памп каналов, предложений гарантировано заработать на бирже и т.д

Alex
06.02.2018
16:28:01
Добрый вечер сообществу! Будет ли уместно опубликовать здесь вакансию golang разработчика в проект связанный с highload онлайн видео сервисами? (я не HR, ищем человека в команду)

Alex
06.02.2018
16:40:36
@likipiki этот - https://t.me/golangjob ?

Sergey
06.02.2018
16:40:54
Alex
06.02.2018
16:41:37
Согласен, но складывается впечатление что там очень тихо

Google
Alex
06.02.2018
16:42:46
@pragus я ссылочку кину чтобы много здесь не постить - https://integros.com/jobs/golang.html

Виталий
06.02.2018
18:02:18
⁉️ Ищу програмиста знающего Go, Tarantool для написания классифайта по недвижимости. Пишите в личку. Обсудим сотрудничество.

Виталий
06.02.2018
18:42:03
для скорости

луа вроде умирающий язык

а Go hазвивается

Kirill
06.02.2018
18:42:25
Виталий
06.02.2018
18:42:26
развивается

Dan
06.02.2018
18:42:34
луа вроде умирающий язык
Ты втираешь нам какую-то дичь

Slach
06.02.2018
18:42:38
для скорости
встроенный в tarantool LUA будет быстрее чем go + tarantool

Dan
06.02.2018
18:42:51
lua пожалуйста не трогать. он идеален для скриптования

Slach
06.02.2018
18:43:07
Ты втираешь нам какую-то дичь
+1 ;) дяденька, вы случайно галстук не жуете как Мишико?

Dan
06.02.2018
18:43:39

Страница 1207 из 1674