Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: 1 2 3 4 5 6      [все]
 Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Разрабатываю проект. В нем есть добавление своих сайтов. У сайта есть настройки. На данный момент остановился на настройках виджета (Это виджет онлайн чат поддержки). И вот стал вопрос. Как хранить это дело? я рассматриваю или отдельные сущности в бд и в java или же в сущности настроек сайта писать json со всеми данными? Первый вариант мне кажется грамоздким для бд ибо это придется грузить каждый раз когда человек заходит на сайт владельца где собственно и стоит этот виджет. А вот с json-ом вижу беду в том что есть риск того-то что чего-то не будет хватать + провалидировать такую структуру будет труднее чем объект в джаве. Прилагаю скрин настроек виджета - Их довольно таки много. В json-е удобно хранить такое, но есть и минусы.

Что скажете?

К сообщению приложен файл. Размер - 57Kb
11 фев 19, 13:26    [21806332]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
Разрабатываю проект. В нем есть добавление своих сайтов.
и не смотрел как у конкурентов?
Т.к. непонятно, на тройки конструктора сайта или готового сайта у заказчика.
11 фев 19, 13:41    [21806357]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123, а как я гляну сервак конкурентов? фронт я то глянул, но больше инфы он не даст мне.

Это не конструктор сайта или сайтов. Это настройки виджета, который клиент будет подключать себе на сайт.
11 фев 19, 13:44    [21806365]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123, то бишь схема такая. Регается клиент. Добавляет свой сайт. Мы проверяем что это реально его сайт. Выдаем ему скрипт для виджета. Он (или программисты) вставляет код в html или что там у него и используется чат. И вот эти вот настройки отвечают за сам виджет этот - цвета, расположение, размеры и т.д.
11 фев 19, 13:46    [21806368]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
я рассматриваю или отдельные сущности в бд и в java или же в сущности настроек сайта писать json со всеми данными?
сущность. Причем разные у разных типов сайта. Как в экселе у ячейки свои свойства, а у строки свои.
11 фев 19, 13:48    [21806372]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
Выдаем ему скрипт для виджета. Он (или программисты) вставляет код в html или что там у него и используется чат. И вот эти вот настройки отвечают за сам виджет этот - цвета, расположение, размеры и т.д.
ну дак он в скрипте проставит?
Настройки кому?
11 фев 19, 13:53    [21806382]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop,
У меня профиле сайт. Давай скрипт.
11 фев 19, 13:55    [21806384]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123
ну дак он в скрипте проставит?
Настройки кому?


Нет, нет. Он настраивает у нас. То бишь вся инфа хранится в нашей бд. А скрипт служить только для подгрузки скрипта с виджетом. Сам виджет идет на сервак за настройками по ресту.
11 фев 19, 14:04    [21806400]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123
Tsyklop,
У меня профиле сайт. Давай скрипт.

Этого еще нет. я только делаю.
11 фев 19, 14:05    [21806405]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123
сущность. Причем разные у разных типов сайта. Как в экселе у ячейки свои свойства, а у строки свои.

Правильно ли я тебя понял? настройки виджета это отдельная сущность, в которой есть другие сущности? к примеру есть настройки цветовой гаммы. Там поле больше 10. Соответственно я это выношу в отдельную сущность и связываю с сущностью настроек виджета?
11 фев 19, 14:13    [21806415]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop,

Да. Получается что вся БЛ это показ фрейма чата.
Это не ИС учетка и Модель будет показ всех фреймов всяких разных.
Напр. Если не заплатил, то показать красным....
Это бизнес логика и вполне можно в таблы распихать по полям через ОРМ.
Так это основа вашей ИС.
11 фев 19, 14:44    [21806459]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
У меня получилось вот так.

Скажите пожалуйста, насколько это хорошо или же плохо. Критика приветствуется!

Спасибо!

@Data
@Entity
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table(name = "widgetSettings")
@EqualsAndHashCode(callSuper = true)
public class WidgetSettingsEntity extends AbstractEntity {

    @JoinColumn(name = "widgetCommonSettingsId", nullable = false, updatable = false)
    @OneToOne(targetEntity = WidgetCommonSettingsEntity.class, fetch = FetchType.EAGER, optional = false)
    private WidgetCommonSettingsEntity common;

    @JoinColumn(name = "widgetSizeSettingsId", nullable = false, updatable = false)
    @OneToOne(targetEntity = WidgetSizeSettingsEntity.class, fetch = FetchType.EAGER, optional = false)
    private WidgetSizeSettingsEntity widget;

    @JoinColumn(name = "widgetButtonSettingsId", nullable = false, updatable = false)
    @OneToOne(targetEntity = WidgetButtonSettingsEntity.class, fetch = FetchType.EAGER, optional = false)
    private WidgetButtonSettingsEntity widgetButton;

    @JoinColumn(name = "widgetColorsSettingsId", nullable = false, updatable = false)
    @OneToOne(targetEntity = WidgetColorsSettingsEntity.class, fetch = FetchType.EAGER, optional = false)
    private WidgetColorsSettingsEntity colors;

    @JoinColumn(name = "widgetCallOrderButtonSettingsId", nullable = false, updatable = false)
    @OneToOne(targetEntity = WidgetCallOrderButtonSettingsEntity.class, fetch = FetchType.EAGER, optional = false)
    private WidgetCallOrderButtonSettingsEntity callOrderButton;

    @JoinColumn(name = "widgetOperatorEvaluationSettingsId", nullable = false, updatable = false)
    @OneToOne(targetEntity = WidgetOperatorEvaluationSettingsEntity.class, fetch = FetchType.EAGER, optional = false)
    private WidgetOperatorEvaluationSettingsEntity operatorEvaluation;

    @JoinColumn(name = "widgetRecallsSettingsId", nullable = false, updatable = false)
    @OneToOne(targetEntity = WidgetRecallsSettingsEntity.class, fetch = FetchType.EAGER, optional = false)
    private WidgetRecallsSettingsEntity widgetRecalls;

    @JoinColumn(name = "widgetRecallSendFormSettingsId", nullable = false, updatable = false)
    @OneToOne(targetEntity = WidgetRecallSendFormSettingsEntity.class, fetch = FetchType.EAGER, optional = false)
    private WidgetRecallSendFormSettingsEntity widgetRecallSendForm;

    @JoinColumn(name = "widgetNotificationsSettingsId", nullable = false, updatable = false)
    @OneToOne(targetEntity = WidgetNotificationsSettingsEntity.class, fetch = FetchType.EAGER, optional = false)
    private WidgetNotificationsSettingsEntity widgetNotifications;

    @JoinColumn(name = "widgetOnlineModeSettingsId", nullable = false, updatable = false)
    @OneToOne(targetEntity = WidgetOnlineModeSettingsEntity.class, fetch = FetchType.EAGER, optional = false)
    private WidgetOnlineModeSettingsEntity widgetOnlineMode;

    @JoinColumn(name = "widgetPersonalDataFormOnlineModeSettingsId", nullable = false, updatable = false)
    @OneToOne(targetEntity = WidgetPersonalDataFormOnlineModeSettingsEntity.class, fetch = FetchType.EAGER, optional = false)
    private WidgetPersonalDataFormOnlineModeSettingsEntity widgetPersonalDataFormOnlineMode;

    @JoinColumn(name = "widgetOfflineModeSettingsId", nullable = false, updatable = false)
    @OneToOne(targetEntity = WidgetOfflineModeSettingsEntity.class, fetch = FetchType.EAGER, optional = false)
    private WidgetOfflineModeSettingsEntity widgetOfflineMode;

    @OneToOne(fetch = FetchType.LAZY, targetEntity = SiteEntity.class, optional = false)
    @JoinColumn(name = "siteId", nullable = false, updatable = false)
    private SiteEntity site;

}
1 мар 19, 01:11    [21822306]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Тут еще такой момент. На некоторых табах (скрин в первом посте) есть кастомные поля. на данный момент я сделал отдельными таблицами. Насколько это гуд? у меня получилось 3 таблица с 3 одинаковыми полями, но с разной привязкой к сущности, к которой она относится.
1 мар 19, 01:15    [21822308]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Лысый дядька
Member

Откуда:
Сообщений: 356
Tsyklop
Скажите пожалуйста, насколько это хорошо или же плохо.

Вы планируете расширять таблицу БД на столько столбцов, сколько у вас виджетов в программе? Это охрененно хорошо, это самый прогрессивный подход.
1 мар 19, 05:40    [21822335]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop,
Так?
Код widgetColorSettingsId userLogin
34 123 Petro

Тогда продолжи пример Модели в базе.
Его согласовывают в ветке Разработка бд без java
1 мар 19, 07:04    [21822355]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
Тут еще такой момент. На некоторых табах (скрин в первом посте) есть кастомные поля. на данный момент я сделал отдельными таблицами. Насколько это гуд? у меня получилось 3 таблица с 3 одинаковыми полями, но с разной привязкой к сущности, к которой она относится.
ничего не понятно. Нужны скрины со стрелочками, пояснениями и т.д.
Не вникая, таблица это сущность. Как у тебя поле сущносиь я не понял.
И чем отличаются кастомные поля от других напиши по русски.
1 мар 19, 07:11    [21822357]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Лысый дядька
Вы планируете расширять таблицу БД на столько столбцов, сколько у вас виджетов в программе? Это охрененно хорошо, это самый прогрессивный подход.

это сарказм?
1 мар 19, 11:26    [21822508]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123
ничего не понятно. Нужны скрины со стрелочками, пояснениями и т.д.
Не вникая, таблица это сущность. Как у тебя поле сущносиь я не понял.


В том коде что я привел - одно поле класса это одна таблица. Или же сущность отдельная. Между ними связь.

Petro123
И чем отличаются кастомные поля от других напиши по русски.


поля которые можно добавить самому. то бишь не жестко забитые поля мной, а юзер сам добавил свои поля.
1 мар 19, 11:34    [21822520]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Лысый дядька
Member

Откуда:
Сообщений: 356
Tsyklop
это сарказм?

Блин, вот ты правда думаешь, что именно так проектируют базы данных?
Твою таблицу можно свести к трем столбцам - НазваниеВиджета, НазваниеПараметра, Значение.
1 мар 19, 11:57    [21822565]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Лысый дядька
Блин, вот ты правда думаешь, что именно так проектируют базы данных?
Твою таблицу можно свести к трем столбцам - НазваниеВиджета, НазваниеПараметра, Значение.


Виджет один. Как бороться тогда с тем что настроек может не быть? то бишь получается так что некоторых параметров может не быть в это таблице. как быть тогда?
1 мар 19, 12:00    [21822571]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop,
Сначала Модель. Потом ГУИ с твоими скринами и полями.
Модель я показал как делают - маппинг + ТАБЛИЦЫ НАГЛЯДНО.
Второе ты не сделал. Делай.
1 мар 19, 12:10    [21822589]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
https://www.google.com/search?q=модель бд&newwindow=1&client=tablet-android-huawei&prmd=ivn&source=lnms&tbm=isch&sa=X&ved=2ahUKEwjc6NfCzODgAhXs0qYKHZRaC1oQ_AUoAXoECA4QAQ&biw=962&bih=601
1 мар 19, 12:11    [21822590]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
поля которые можно добавить самому. то бишь не жестко забитые поля мной, а юзер сам добавил свои поля.
тут надо думать, т.к. Юз кейс их создания ты не предоставил.
Если он в скрипте делает, то пусть в скрипте и сидят. У тебя в БЛ не учавствуют.
1 мар 19, 12:15    [21822597]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123
тут надо думать, т.к. Юз кейс их создания ты не предоставил.
Если он в скрипте делает, то пусть в скрипте и сидят. У тебя в БЛ не учавствуют.


не понял. в каком скрипте?

Вот пример настроек с полями

К сообщению приложен файл. Размер - 66Kb
1 мар 19, 12:28    [21822613]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123
Tsyklop,
Сначала Модель. Потом ГУИ с твоими скринами и полями.
Модель я показал как делают - маппинг + ТАБЛИЦЫ НАГЛЯДНО.
Второе ты не сделал. Делай.


я не могу с h2 сделать модель.
1 мар 19, 12:29    [21822616]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Лысый дядька
Member

Откуда:
Сообщений: 356
Tsyklop
Виджет один. Как бороться тогда с тем что настроек может не быть? то бишь получается так что некоторых параметров может не быть в это таблице. как быть тогда?

Тогда вам запрос вернет NULL и вы будете использовать какие-то настройки по дефолту.
1 мар 19, 12:31    [21822620]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Лысый дядька
Member

Откуда:
Сообщений: 356
Tsyklop
я не могу с h2 сделать модель.

Это еще почему?
1 мар 19, 12:32    [21822622]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Лысый дядька
Это еще почему?

ибо хз как. Если знаете, то подскажите пожалуйста
1 мар 19, 12:36    [21822627]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
Petro123
тут надо думать, т.к. Юз кейс их создания ты не предоставил.
Если он в скрипте делает, то пусть в скрипте и сидят. У тебя в БЛ не учавствуют.


не понял. в каком скрипте?

Вот пример настроек с полями

Картинка с другого сайта.
можешь в json в блоб поле базы.
Запросов и БЛ по ним нет.
1 мар 19, 12:53    [21822638]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
я не могу с h2 сделать модель.
в смысле? На промокашке карандашем и сфотать телефоном скрин не можешь?
А я выше смог?
1 мар 19, 12:54    [21822642]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123, Вот модель.

К сообщению приложен файл. Размер - 91Kb
1 мар 19, 12:54    [21822643]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
Petro123, Вот модель.

Картинка с другого сайта.
наконец то))))
1 мар 19, 12:55    [21822646]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123, это модель того класса который я скинул выше.

Я не знаю как правильно. Так оставить или же нет.
1 мар 19, 12:58    [21822647]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123
можешь в json в блоб поле базы.
Запросов и БЛ по ним нет.


Я тоже рассматривал этот вариант. Но там не факт что все поля будут. Мало ли. Так же само как и с вариантом одной таблицы, который был предложен выше.
1 мар 19, 12:59    [21822648]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Лысый дядька
Тогда вам запрос вернет NULL и вы будете использовать какие-то настройки по дефолту.


Фигня в том что како-то параметра может вообще в принципе не быть. И тут уже беда.Если в том варианте который есть у меня сейчас там будет поле NULL.

Я рассматриваю все варианты. Я не говорю что Ваш вариант не подходит.
1 мар 19, 13:00    [21822649]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
Petro123
можешь в json в блоб поле базы.
Запросов и БЛ по ним нет.


Я тоже рассматривал этот вариант. Но там не факт что все поля будут. Мало ли. Так же само как и с вариантом одной таблицы, который был предложен выше.
не понял. Пример давай. В блоб можно все чт угодно сохранить.
1 мар 19, 13:07    [21822653]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123
не понял. Пример давай. В блоб можно все чт угодно сохранить.


Можно все что угодно, да. Но не факт что все те настройки которые мне нужны будут там находится (а мало ли что-то не передалось и т.д.)

К примеру при сохранении с фронта не пришло одно поле. И получится что его нет в бд вообще. А если брать то что сейчас то я и провалидировать смогу адекватно, ну или на крайняк будет NULL.
1 мар 19, 13:11    [21822657]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
К примеру при сохранении с фронта не пришло одно поле.
подробнее юз кейс распиши на 4 абзаца.
Ты пытаешься делать динамичные формы хранящиеся на сервере. Это не очень правильно.
Юзверь не разработчик ГУИ.
1 мар 19, 13:15    [21822659]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 5183
Не вижу особого смысла хранить настройки в таком виде.

я бы хранил в json
1. валидировать json можно при маппинге его в сущность
(родной @Valid, или сприговые валидаторы можно использовать.

2. а можно валидировать с помощью json-schema и вообще не конвертить ничего в pojo (чего вам в этом случае и желаю).
1 мар 19, 13:29    [21822668]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123
подробнее юз кейс распиши на 4 абзаца.
Ты пытаешься делать динамичные формы хранящиеся на сервере. Это не очень правильно.
Юзверь не разработчик ГУИ.


Ну. Типо не разработчик ГУИ, но он может настроить то же ГУИ под себя как ему угодно. Аля html билдер, но не прям что бы билдер.

Юзкейс.
Клиент (который владелец сайта) добавил свой сайт к нам на сервис. Добавил виджет к себе на сайт (вставил js код к себе в html).

Он может настроить тот самый виджет под себя, как ему нужно. Вот это вот окно с настройками за это и отвечает. Клиент тут настраивает виджет и когда виджет подключается к серваку, он получает эти самые настройки. И уже на основании их работает.

И вот к примеру, когда клиент сохранял настройки что-то пошло не так и какие-то поля не пришли вообще.

И как быть в случае если в дальнейшем будут добавляться поля или же убираться? Если с добавлением в принципе ок, то вот с удалением все печально. Если будет энтити в виде классов то удалить поле и хибер удалит колонку. Все вроде ок.

что меня напрягает так это то что запрос на получение всех настроек будет весьма массивный. LAZY инициализация тут не подходит, ибо нужны все настройки.
1 мар 19, 13:30    [21822670]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Озверин, как вариант. можно и так.
1 мар 19, 13:43    [21822693]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop,
Я уже тебе говорил, почему он не может прямо в скрипте по твоему API добавлять поля? Свои, которые ты назвал кастомные?
А default вид виджета ты делаешь в модели и полях базы.
1 мар 19, 13:51    [21822708]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
Добавил виджет к себе на сайт

Например, Календарь

Tsyklop
Вот это вот окно с настройками за это и отвечает.
там только то что ты предусмотрел. Например, показывать кнопку Квартал.
Так?
1 мар 19, 13:53    [21822710]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Кроме кнопки квартал, он не может и не должен ничего добавлять.
Только список строк = класс Properties.
1 мар 19, 13:55    [21822712]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123, Виджет чатика. кастомные могут быть только поля для ввода текстовых данных. и все.

Ну и кастомизация заключается в том что клиент может включить или отключить какой-то функционал в виджете чата.
1 мар 19, 14:03    [21822720]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
Petro123, Виджет чатика. кастомные могут быть только поля для ввода текстовых данных. и все.

Ну и кастомизация заключается в том что клиент может включить или отключить какой-то функционал в виджете чата.

Один класс список строк на каждый виджет. Что ты голову морочишь что поля не будет?
1 мар 19, 14:14    [21822734]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
кастомные могут быть только поля для ввода текстовых данных. и все.
рисуй сюда Модель только этого куска функционала.
Как я выше дал.
1 мар 19, 14:16    [21822736]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16319
Tsyklop
Ну и кастомизация заключается в том что клиент может включить или отключить какой-то функционал в виджете чата.
можно в одной таблице хранить любое количество полей для виджета и их значения для любого клиента из любого количества этих клиентов.
1 мар 19, 14:58    [21822788]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16319
Tsyklop
Ну и кастомизация заключается в том что клиент может включить или отключить какой-то функционал в виджете чата.
можно в одной таблице хранить любое количество полей для виджета и их значения для любого клиента из любого количества этих клиентов.
1 мар 19, 14:58    [21822789]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Лысый дядька
Member

Откуда:
Сообщений: 356
Tsyklop
Фигня в том что како-то параметра может вообще в принципе не быть. И тут уже беда.Если в том варианте который есть у меня сейчас там будет поле NULL.

Ииии? Ну ок, там NULL, ваша логика поняла этот NULL и адекватно на него ответила. В чем проблема то?
1 мар 19, 18:20    [21823007]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Лысый дядька,
У него оказалось вообще просто.
5 полей это список из 5 строк.
Null не может быть. Может быть List.Count()=0.
1 мар 19, 18:39    [21823025]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Лысый дядька
Member

Откуда:
Сообщений: 356
Petro123,

я снимаю шляпу и умываю руки, простите
1 мар 19, 18:41    [21823028]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Лысый дядька
Petro123,

я снимаю шляпу и умываю руки, простите
низзззяяя. Кворума не будет)
1 мар 19, 18:44    [21823035]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
mayton
Member

Откуда: loopback
Сообщений: 41895
Мда... можно прийти в ужас от WidgetSettingsEntity. Это ... кажется я называл EE-клерикализм.
Или здесь JPA-клерикализм. Хм... Особенно связи OneToOne радуют. Какая задача решается?
Просто разделить на части?
1 мар 19, 20:34    [21823086]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
mayton
Мда... можно прийти в ужас от WidgetSettingsEntity. Это ... кажется я называл EE-клерикализм.
Или здесь JPA-клерикализм. Хм... Особенно связи OneToOne радуют. Какая задача решается?
Просто разделить на части?


Хранение большого количества настроек. а что не так с кодом то? знаете как можно лучше сделать? как говорить, критикуешь - предложи лучше
2 мар 19, 01:20    [21823198]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
mayton
Member

Откуда: loopback
Сообщений: 41895
Настройки обычно хранят в EAV модели.

Это архитектура базячной части.
В части Java поверх нее может быть
Либо Map из properties. Либо любая
Другая удобная тебе модель.
2 мар 19, 14:17    [21823322]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
mayton
EAV
-1
много кода выходит
2 мар 19, 14:38    [21823328]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
mayton
Member

Откуда: loopback
Сообщений: 41895
Давайте так.

Первичная информация о свойствах,
Именах и именах виджетов должна
Быть в проекте задекларирована.

Как по вашему мнению. Куда ее лучше положить?
2 мар 19, 15:11    [21823337]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
mayton
Member

Откуда: loopback
Сообщений: 41895
Следущий вопрос - матрица стратегий хранения
Этих свойств. И цена внесения изменений.
Здесь надо спрашивать автора - как часто он
Планирует вносить туда изменения.

Внесение изменений в схему БД обычно дорого стоят.
Это ddl. Блокирующие операции. То есть в момент
Когда изменения наказываются - бизнес будет стоять.
Возможно это не критично. Надо спрашивать.

Да и вообще. Надо много приходить к бизнесу и
Спрашивать. Виджеты виджетами а цена тоже
Своя будет уплаченна за каждый CR.
2 мар 19, 16:53    [21823363]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
mayton
Следущий вопрос - матрица стратегий хранения
Этих свойств. И цена внесения изменений.
Здесь надо спрашивать автора - как часто он
Планирует вносить туда изменения.

Внесение изменений в схему БД обычно дорого стоят.
Это ddl. Блокирующие операции. То есть в момент
Когда изменения наказываются - бизнес будет стоять.
Возможно это не критично. Надо спрашивать.

Да и вообще. Надо много приходить к бизнесу и
Спрашивать. Виджеты виджетами а цена тоже
Своя будет уплаченна за каждый CR.


Я согласен что шатания бд будут дорого стоить, особенно для продакшена. Но тут уж надо выбирать.

Как часто. Вот честно - сам не знаю. Могу только предполагать. Я знаю что на данный момент сделали все по максимуму. А вот дальше... может и не потребуется добавление нового (хотя наврятли)
2 мар 19, 19:45    [21823421]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
mayton
Давайте так.

Первичная информация о свойствах,
Именах и именах виджетов должна
Быть в проекте задекларирована.

Как по вашему мнению. Куда ее лучше положить?


да хоть в текстовый файл.
2 мар 19, 19:45    [21823422]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Озверин
Не вижу особого смысла хранить настройки в таком виде.

я бы хранил в json
1. валидировать json можно при маппинге его в сущность
(родной @Valid, или сприговые валидаторы можно использовать.

2. а можно валидировать с помощью json-schema и вообще не конвертить ничего в pojo (чего вам в этом случае и желаю).


Можно подробнее про валидацию с помощью json-schema? может где пример есть
2 мар 19, 19:46    [21823423]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
mayton
Member

Откуда: loopback
Сообщений: 41895
Tsyklop
mayton
Давайте так.

Первичная информация о свойствах,
Именах и именах виджетов должна
Быть в проекте задекларирована.

Как по вашему мнению. Куда ее лучше положить?


да хоть в текстовый файл.

И что вы будете делать с текстовым файлом? У вас есть vision of next step?
2 мар 19, 20:58    [21823452]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
mayton
Внесение изменений в схему БД обычно дорого стоят.
я пока не увидел что при добавлении юзверя или виджета требуется добавлять таблицу или поле.
Автор, разве у вас так?
2 мар 19, 21:09    [21823455]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
Можно подробнее про валидацию с помощью json-schema? может где пример есть
вы определитесь.
Если знаете базы, то работайте с базами без json.
Если не знаете, то работайте с json.
Делать компот из обоих не вижу надобности по ТЗ.
2 мар 19, 21:13    [21823457]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123
я пока не увидел что при добавлении юзверя или виджета требуется добавлять таблицу или поле.
Автор, разве у вас так?

Нет, такого нет.
2 мар 19, 21:39    [21823463]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123
вы определитесь.
Если знаете базы, то работайте с базами без json.
Если не знаете, то работайте с json.
Делать компот из обоих не вижу надобности по ТЗ.

Почему сразу компот?
Я ищу решение. Я сделал в бд. Хочу попробовать в json сделать и глянуть что лучше.
2 мар 19, 21:40    [21823464]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
Нет, такого нет.
значит ddl не будет. Отлично.

Tsyklop
Почему сразу компот?

А где Модель для json?
Ее ведь тоже надо делать.
Или json только юзверь поля строковые?
2 мар 19, 23:42    [21823495]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Если вы решили json вообще без РСУБД, то я в шоке...
2 мар 19, 23:45    [21823496]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16319
Tsyklop,

есть сайт, юзер, есть виджет, есть параметры этого виджета, есть значения этого виджета
это всё можно хранить в одной таблице
и нет ограничений для количества сайтов, количества виджетов, количества параметров и количества значений

в чем проблема?
2 мар 19, 23:52    [21823499]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16319
ЗЫ
и всё это без изменения DDL
2 мар 19, 23:54    [21823501]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
вадя,
Приведи таблицу. Я же привел выше.
У тебя решение без ОРМ.
3 мар 19, 00:00    [21823502]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
забыл ник
Member

Откуда:
Сообщений: 2945
А зачем здесь орм вообще? Для того чтобы был? Да и реляционная тут не нужна, mongodb за глаза хватит. С каким нибудь объектным кэшем, если перформанс нужен
3 мар 19, 00:35    [21823513]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16319
Petro123
вадя,
Приведи таблицу. Я же привел выше.
У тебя решение без ОРМ.

id
id_site
id_user
id_vidjet
param_name
param_value

все просто
3 мар 19, 00:51    [21823516]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
mayton
Member

Откуда: loopback
Сообщений: 41895
id
id_site
id_user
id_vidjet


id_vidjet
param_name
param_value
3 мар 19, 01:12    [21823525]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Все предложенные варианты хороши и плохи одновременно.

1. Вариант с БД.
Да, можно сделать, как предлагают, одну таблицу с параметрами. В принципе тут ничего сложного нет, да и для ОРМ будет легче чем как делал я. НО. Как мне вносить туда данные? то бишь когда создается сайт, в таблицу нужно записать параметры в таблицу эту. Где мне хранить дефолтный список этих самых параметров? Параметров около 40 штук. Как мне вносить новые параметры? (мало ли). Я внесу как дефолтный, в таблице самих параметров его не будет. Только тогда когда клиент сайта пересохранит нужные настройки он появится в таблице. Тут вроде бы все ок, но вот только не ок если клиент этого не сделает. Могут же быть и дубликаты параметров в бд. Может пойти что-то не так. Тогда придется ставить unique на два поля.
Окей. Идем дальше. После выборки настроек с БД мерджить с дефолтными настройками. Получится что на место тех которых нет станут дефолтные. Опять же возникает вопрос. Как лучше хранить дефолтные настройки? файл? бд? что лучше?

2. Вариант с JSON-ом
Так тоже можно сделать: есть дефолтный файл json, с настройками и описанием схемы (для валидации). JSON конкретного сайта хранить в его сущности в поле. Тут ничего военного. Так то. Но что будет если настройки будут расширятся? Если добавится обязательный параметр, то все JSON-ы которые в бд станут не валидными, и проверку проходить не будут (хотя проверка будет только при сохранении настроек клиентом, так что это в принципе можно не брать во внимание ибо UI будет строится на основании дефолтных значении, а поверх него уже накладываться значения которые сохранены.). Но окей. Масштабируемость. Тут мне кажется печально, как и в первом варианте. При большой кол-ве параметров JSON станет трудно поддерживать.

Вот что я вижу ребят. У кого есть еще какие мысли? может я чет упустил или не понимаю, ну или не вижу.
3 мар 19, 01:30    [21823529]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
mayton
Member

Откуда: loopback
Сообщений: 41895
Tsyklop, тут про БД вообще философский вопрос. Кто-ж тебе скажет что лучше как не ты сам?

Есть вариант - написал ПО и забыл. Тоесть повёл себя как индус. Отдал с хардкодом всего чего
только можно. И где вообще та золотая середина где хардкод заканчивается.

Я лично не знаю. Ты сам должен ее для себя определить. Ты должен понять где тебе можно
шаблон сделать гибким. А где можно и положить в Java-код.

Начни кодить. Иди от use-case. Представь что ты сам - бизнес пользователь и хочешь
что-то в системе сделать. В идеале у тебя тех-задание должно быть описано в виде
таких вот stories. Если этого задания нет или ты его придумываешь на ходу - ктож
тебе правильно подскажет. Тут все советы будут и правильными и неправильными.
3 мар 19, 01:51    [21823535]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
mayton, Пользователю все равно как оно и что там под капотом делается. Ему важно что бы сохраняло и отображалось - все.

Я не спрашиваю готовое решение - его просто нет. Я хочу узнать что другие думают по этому поводу. Может у кого мысль и есть.
3 мар 19, 02:51    [21823541]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
mayton
Member

Откуда: loopback
Сообщений: 41895
Tsyklop
При большой кол-ве параметров JSON станет трудно поддерживать.

JSON можно через почту переслать. Любой школьник осилит. А вот экспорт SQL скриптов сделать и потом их загрузить в БД
для некоторых пользователей задача - неподъёмная.
3 мар 19, 02:55    [21823543]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
вадя,
Ну, я же сказал. Модель как экселе или ini файле. Без типизации.
Складывать, отнимать параметры как будем?
3 мар 19, 08:36    [21823566]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
1. Вариант с БД.
Да, можно сделать, как предлагают, одну таблицу с параметрами.
Блин, да сколько можно спрашивать?
КТО И ГДЕ ПРЕДЛАГАЛ ОДНУ ТАБЛИЦУ КАК МОДЕЛЬ ИС?
3 мар 19, 08:40    [21823567]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
mayton
Tsyklop
При большой кол-ве параметров JSON станет трудно поддерживать.

JSON можно через почту переслать. Любой школьник осилит. А вот экспорт SQL скриптов сделать и потом их загрузить в БД
для некоторых пользователей задача - неподъёмная.
я так понял, что все сайты юзверей просто подгружают сторонний сайт ТС. Как баннер рекламы подгружают.
3 мар 19, 08:45    [21823568]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
забыл ник
А зачем здесь орм вообще?
может и не нужен, но тогда и спринг не нужен.
))
Клиент сервер, БЛ в базе в хранимках.
)).
У автора под словом параметры, на самом деле Модель ИС т.к. он продает виджеты. Это основа системы.
3 мар 19, 08:50    [21823569]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
mayton
id
id_site
id_user
id_vidjet


id_vidjet
param_name
param_value

У него параметры не только строковые.
3 мар 19, 08:54    [21823570]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Настройки сайта ТС делит на основные и 3-5 штук дополнительных добавляемых юзверем.
Все что я выше написал относится к основным.
Про дополнительные, я не врубился, почему юзверь на своем сайте их не сохранит?
Он в твой добавляет урл своего сайта?
3 мар 19, 09:01    [21823572]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16319
Petro123
У него параметры не только строковые.
по сути не важно строковые/не строковые - и числа можно хранить в строках. на клиента в любом случае передаётся строка.

вопрос ТС - что такое виджет? он имеет связь с его сервером?
mayton
id
id_site
id_user
id_vidjet


id_vidjet
param_name
param_value
вариант имеет право существовать.
но с изменением

id
id_site
id_user
id_vidjet

id
id_vidjet
param_name
param_value


Tsyklop
можно иметь таблицу с дефолтными параметрами для каждого виджета и просто переписывать из неё при регистрации юзверя
3 мар 19, 11:04    [21823585]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
вадя
по сути не важно строковые/не строковые - и числа можно хранить в строках. на клиента в любом случае передаётся строка.
ты половина не читаешь?
Бизнес логика где и как?
SUM(строка), MAX(строка)?
Не смеши мои ботинки.
3 мар 19, 11:08    [21823587]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
вадя
и числа можно хранить в строках
и дату как 22 сентября))) LOL
3 мар 19, 11:10    [21823588]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Виджет - это штука для онлайн поддержки в виде чатика между оператором и клиентом. Именно его подключает к себе владелец сайта. Конечно виджет имеет доступ к серверу нашему, но не к серверу клиента. То бишь все данные о клиентах и переписки хранятся у нас. И мы же предоставляем штуку для администрирования чатов и т.д.

Свои параметры клиент создать не может. Он может создать только свои поля (input-ы) для сбора данных о клиенте.
3 мар 19, 13:34    [21823636]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
Petro123
Блин, да сколько можно спрашивать?
КТО И ГДЕ ПРЕДЛАГАЛ ОДНУ ТАБЛИЦУ КАК МОДЕЛЬ ИС?[/quot]

Выше предлагали.
3 мар 19, 14:41    [21823676]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1027
mayton
JSON можно через почту переслать. Любой школьник осилит. А вот экспорт SQL скриптов сделать и потом их загрузить в БД
для некоторых пользователей задача - неподъёмная.

При чем тут школьники, если речь идет о разрабах, которые будут разрабатывать дальше продукт?
3 мар 19, 14:43    [21823677]     Ответить | Цитировать Сообщить модератору
 Re: Хранение настроек сайта  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
Виджет - это штука для онлайн поддержки в виде чатика между оператором и клиентом. Именно его подключает к себе владелец сайта. Конечно виджет имеет доступ к серверу нашему, но не к серверу клиента. То бишь все данные о клиентах и переписки хранятся у нас. И мы же предоставляем штуку для администрирования чатов и т.д.

Уже говорил!
У меня есть сайт. Дай ПРИМЕР (юз-кейс) как:
  • 1. зарегить МОЙ сайт AutoPOI.ru в твой сайт Tsyklop.ru
  • 2. какой скрипт мне вставить себе чтобы МОЙ оператор1 на AutoPOI.ru чатился с МОИМ клиентом в IE.
    Вопрос понятен?
  • 3 мар 19, 14:47    [21823680]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Tsyklop
    Выше предлагали.
    ссылку дай
    3 мар 19, 14:47    [21823681]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    вадя
    Member

    Откуда: Екатеринбург
    Сообщений: 16319
    Petro123
    ты половина не читаешь?
    Бизнес логика где и как?
    SUM(строка), MAX(строка)?
    Не смеши мои ботинки.
    ты чё носишься со своей бизнес логикой?
    зачем в параметрах SUM(строка), MAX(строка)?

    уж если и надо будет такое - то можно и сделать доп поле в котором хранить тип параметра
    а время на преобразование для 40 полей много не займет.
    Tsyklop
    Конечно виджет имеет доступ к серверу нашему, но не к серверу клиента.
    ну тогда какие проблемы сохранить параметры изменённые клиентом в своей версии виджета?
    3 мар 19, 18:59    [21823808]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 41895
    Tsyklop
    mayton
    JSON можно через почту переслать. Любой школьник осилит. А вот экспорт SQL скриптов сделать и потом их загрузить в БД
    для некоторых пользователей задача - неподъёмная.

    При чем тут школьники, если речь идет о разрабах, которые будут разрабатывать дальше продукт?

    Это кстати важный вопрос. Кто дальше будет поддерживать?

    Усилия разработчиков обычно дорого стоят. Поддержка там. Change requests.
    Если это переносить в плоскоcть 2-й линии поддержки то как-раз и будут
    интересны DSL на базе JSON.

    Хотя... может быть у тебя масштаб не тот.
    3 мар 19, 19:09    [21823812]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    вадя
    ты чё носишься со своей бизнес логикой?

    это ответ инженера))
    вадя
    зачем в параметрах SUM(строка), MAX(строка)?

    у ТС спроси.
    У него есть запрос вида: "кто не заплатил за виджет")))
    Но ты же кроме хранимок ничего не писал.
    3 мар 19, 20:57    [21823859]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    вадя
    Member

    Откуда: Екатеринбург
    Сообщений: 16319
    Petro123
    У него есть запрос вида: "кто не заплатил за виджет")))
    это как может относиться к параметрам виджета?
    Petro123
    это ответ инженера))
    простейшее решение называть бизнес логикой?
    Petro123
    Но ты же кроме хранимок ничего не писал.
    а что в хранимках нет запросов?
    3 мар 19, 21:07    [21823862]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    вадя
    Petro123
    У него есть запрос вида: "кто не заплатил за виджет")))
    это как может относиться к параметрам виджета?

    Не заплатил за виджет не относится к виджету?
    У тебя странная логика.

    вадя
    Petro123
    Но ты же кроме хранимок ничего не писал.
    а что в хранимках нет запросов?

    Разве из первого следует второе?
    ...
    Извини, у тебя логики ноль даже в двух предложениях.
    3 мар 19, 22:00    [21823893]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    вадя
    Member

    Откуда: Екатеринбург
    Сообщений: 16319
    Petro123
    Не заплатил за виджет не относится к виджету?
    У тебя странная логика.
    ну ты путаешь мух с котлетами.
    оплата за виждет к данной таблице ни имеет никакого отношения.

    Petro123
    Разве из первого следует второе?
    ...
    Извини, у тебя логики ноль даже в двух предложениях.
    а у тебя с чувством юмора проблемки.
    3 мар 19, 22:07    [21823899]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    вадя
    оплата за виждет к данной таблице ни имеет никакого отношения.
    аргументы то где?
    3 мар 19, 22:34    [21823907]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    вадя
    Member

    Откуда: Екатеринбург
    Сообщений: 16319
    Petro123
    аргументы то где?
    какие аргументы? бухгалтерия - это отдельно, параметры виджета - отдельно.
    3 мар 19, 22:39    [21823911]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    вадя
    уж если и надо будет такое - то можно и сделать доп поле в котором хранить тип параметра
    а время на преобразование для 40 полей много не займет.

    Id name paramName paramValue type
    3 виджетUser д.р. 30.05.1988 date
    4 виджетUser Имя Вася string
    ...

    Так?)))))
    3 мар 19, 22:44    [21823913]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    вадя
    Petro123
    аргументы то где?
    какие аргументы? бухгалтерия - это отдельно, параметры виджета - отдельно.

    А где логистика и отдел кадров?
    Чё та ржу...)
    3 мар 19, 22:50    [21823914]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Tsyklop
    Member

    Откуда: Украина
    Сообщений: 1027
    mayton
    При чем тут школьники, если речь идет о разрабах, которые будут разрабатывать дальше продукт?

    Это кстати важный вопрос. Кто дальше будет поддерживать?

    Усилия разработчиков обычно дорого стоят. Поддержка там. Change requests.
    Если это переносить в плоскоcть 2-й линии поддержки то как-раз и будут
    интересны DSL на базе JSON.

    Хотя... может быть у тебя масштаб не тот.[/quot]

    На данный момент буду и дальше поддерживать я.
    4 мар 19, 01:00    [21823948]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Tsyklop
    Member

    Откуда: Украина
    Сообщений: 1027
    [quot вадя] в параметрах SUM(строка), MAX(строка)?
    откуда это? что это за параметр такой?

    вадя
    ну тогда какие проблемы сохранить параметры изменённые клиентом в своей версии виджета?

    Оно и так будет сохранятся у каждого виджета своё
    4 мар 19, 01:01    [21823949]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Tsyklop
    Member

    Откуда: Украина
    Сообщений: 1027
    Petro123
    Уже говорил!
    У меня есть сайт. Дай ПРИМЕР (юз-кейс) как:
  • 1. зарегить МОЙ сайт AutoPOI.ru в твой сайт Tsyklop.ru
  • 2. какой скрипт мне вставить себе чтобы МОЙ оператор1 на AutoPOI.ru чатился с МОИМ клиентом в IE.
    Вопрос понятен?


  • 1. Через веб интерфейс - картинка.
    2. Вставить такое вот перед тегом на странице где нужен виджет чата поддержки </body>

    <!-- Begin ChatOnline -->
    <script type='text/javascript'>
    	(function(d, w, m) {
    		let s = d.createElement('script');
    		s.type ='text/javascript'; s.id = m+'Script'; s.charset = 'utf-8'; s.async = true;
    		s.src = 'http://%serverIp%/api/v1/widget?key=%siteKey%';
    		let sc = d.getElementsByTagName('script')[0];
    		sc?sc.parentNode.insertBefore(s, sc):d.documentElement.firstChild.appendChild(s);
    	})(document, window, 'MobilsChatOnline');
    </script>
    <!-- End ChatOnline -->
    


    К сообщению приложен файл. Размер - 12Kb
    4 мар 19, 01:37    [21823954]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Tsyklop
    Вставить такое

    Называется такое - скрипт.
    1. Я владелец сайта, это как настройки по умолчанию для exe. Default параметры в скрипте обеспечиваешь ты.
    2. Настройки типа цвет, размер окна, каждого юзверя сохраняешь у него на клиенте. Это типа для exe вариант реестра или ini файла.
    В веб это куки или база в эксплорере.
    Если он куки стер, то у него опять все поля по умолчанию ИЗ СКРИПТА js. Можно и из бд таблиц конечно, но нафига если js прогер тоже человек?)).
    4 мар 19, 07:30    [21824010]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Получается не одна таблица на все параметры, и не один json, а
    Настройки в трех местах - бд сервер, скрипт js, бд клиента-куки.
    4 мар 19, 07:33    [21824011]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    вадя
    Member

    Откуда: Екатеринбург
    Сообщений: 16319
    Petro123
    Так?)))))
    можно и так.

    Petro123
    А где логистика и отдел кадров?
    Чё та ржу...)
    а это всё зачем в кучу?
    4 мар 19, 09:10    [21824046]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    вадя,
    В кучу, у тебя, когда ты в одном поле и дату и строку и цвет и адрес запихал.
    Это даже не access, это эксель.
    4 мар 19, 09:50    [21824067]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Tsyklop
    Member

    Откуда: Украина
    Сообщений: 1027
    Petro123
    Называется такое - скрипт.
    1. Я владелец сайта, это как настройки по умолчанию для exe. Default параметры в скрипте обеспечиваешь ты.
    2. Настройки типа цвет, размер окна, каждого юзверя сохраняешь у него на клиенте. Это типа для exe вариант реестра или ini файла.
    В веб это куки или база в эксплорере.
    Если он куки стер, то у него опять все поля по умолчанию ИЗ СКРИПТА js. Можно и из бд таблиц конечно, но нафига если js прогер тоже человек?)).


    Вставляешь такой скрипт и появляется виджет.
    А если на серваке обновят настройки на серваке?

    Если с клиентом все понятно, то как хранить на серваке в бд?
    4 мар 19, 10:48    [21824123]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Tsyklop
    А если на серваке обновят настройки на серваке?
    юз кейс нормальный говори.
    Тут твой сервак, мой и ещё клинтов 2000 штук серваков.
    4 мар 19, 11:07    [21824137]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Tsyklop
    Member

    Откуда: Украина
    Сообщений: 1027
    Petro123
    юз кейс нормальный говори.
    Тут твой сервак, мой и ещё клинтов 2000 штук серваков.


    сервак один как бы - который я разрабатываю.
    4 мар 19, 11:09    [21824138]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Tsyklop
    Petro123
    юз кейс нормальный говори.
    Тут твой сервак, мой и ещё клинтов 2000 штук серваков.


    сервак один как бы - который я разрабатываю.
    уже говорил. Твой сервак это как exe с манифестом или ини файлом настроек.
    Теперь повтори свой вопрос.
    4 мар 19, 11:19    [21824143]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Tsyklop,
    Ты в игрушки играл?
    Что будет если у игрушки c:/tetris.exe поменять настройки?
    Непонятен вопрос.
    4 мар 19, 11:20    [21824144]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    вадя
    Member

    Откуда: Екатеринбург
    Сообщений: 16319
    Petro123
    В кучу, у тебя, когда ты в одном поле и дату и строку и цвет и адрес запихал.
    Это даже не access, это эксель.
    в кучу - это и бухгалтерские данные и настройки виджета. да ещё и логистику...
    4 мар 19, 12:01    [21824184]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    вадя
    Member

    Откуда: Екатеринбург
    Сообщений: 16319
    Tsyklop
    то как хранить на серваке в бд?
    какие проблемы?если виджет имеет связь с твоим серваком, какие проблемы обратиться к твоему серваку и получить с него или сохранить на нём настройки?
    4 мар 19, 12:06    [21824188]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Tsyklop
    Member

    Откуда: Украина
    Сообщений: 1027
    Petro123
    Tsyklop,
    Ты в игрушки играл?
    Что будет если у игрушки c:/tetris.exe поменять настройки?
    Непонятен вопрос.

    при чем тут exe какие-то. к чему это? зачем это?
    4 мар 19, 12:16    [21824196]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Tsyklop
    Member

    Откуда: Украина
    Сообщений: 1027
    вадя
    Tsyklop
    то как хранить на серваке в бд?
    какие проблемы?если виджет имеет связь с твоим серваком, какие проблемы обратиться к твоему серваку и получить с него или сохранить на нём настройки?

    мне так делать каждую секунду? или как? ведь настройки могут обновится в любую секунду.

    придется каждый раз при загрузке грузить настройки с сервака.
    4 мар 19, 12:17    [21824197]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Tsyklop
    Member

    Откуда: Украина
    Сообщений: 1027
    Petro123
    уже говорил. Твой сервак это как exe с манифестом или ини файлом настроек.
    Теперь повтори свой вопрос.

    нет, это не как то о чем ты говоришь. Тут настройки хранятся в бд, а не в файле. И у сервака есть свои настройки, но они НИКАК не относятся к настройкам виджета, который будет появляться у клиента. Ну вот вообще никак не связано.

    Юз-кейс:
    Человек зашел на сайт. У него подгрузился и появился виджет чата. Соответственно у него подгрузились все настройки, сохранились в локалсторадже.
    В это время клиент (владелец сайта, тот кто добавил свой сайт, в моем сервисе) обновляет настройки виджета - изменил цвет кнопочки. Что бы изменения отобразились в виджете нужно загружать настройки с сервака каждый раз при его загрузке.
    4 мар 19, 12:23    [21824205]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Tsyklop
    И у сервака есть свои настройки, но они НИКАК не относятся к настройкам виджета, который будет появляться у клиента. Ну вот вообще никак не связано.
    дак не пихай в бд то что не относится.
    Вверху я пост написал про три типа настроек.
    На 3 кучки можно разделить?))))
    4 мар 19, 12:51    [21824244]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Tsyklop
    Человек зашел на сайт. У него подгрузился и появился виджет чата. Соответственно у него подгрузились все настройки,
    default. Это те что я в AutoPOI.ru вставил в скрипте так:
    var pre = document.createElement('pre');
    //custom style.
    pre.style.maxHeight = "400px";
    pre.style.margin = "0";
    pre.style.padding = "24px";
    pre.style.whiteSpace = "pre-wrap";
    pre.style.textAlign = "justify";
    pre.appendChild(document.createTextNode($('#la').text()));
    //show as confirm
    alertify.confirm(pre, function(){
            alertify.success('Accepted');
        },function(){
            alertify.error('Declined');
        }).set({labels:{ok:'Accept', cancel: 'Decline'}, padding: false})
    
    4 мар 19, 12:54    [21824254]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Теперь если юзверь не трогал настройки сам, то default настройки скрипта перевешивают.
    И он увидет новый цвет версии Клиент 2.3.3.
    Ни разу десктоп.ехе не писал?
    4 мар 19, 12:57    [21824256]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Tsyklop
    Что бы изменения отобразились в виджете нужно загружать настройки с сервака каждый раз при его загрузке.
    блин!
    Даже ворд при апдейте спрашивает: "настройки удалять старые?".
    4 мар 19, 13:00    [21824260]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Tsyklop,
    Возьми в пару себе постановщика какого, или БА по научному.
    4 мар 19, 13:02    [21824264]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    вадя
    Member

    Откуда: Екатеринбург
    Сообщений: 16319
    Tsyklop
    мне так делать каждую секунду? или как? ведь настройки могут обновится в любую секунду.

    придется каждый раз при загрузке грузить настройки с сервака.
    а в чем проблема? у тебя твой скрипт грузится каждый раз с твоего сервера.
    кто мешает ранее сделанные настройки загрузить в скрипт?
    4 мар 19, 13:20    [21824289]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Tsyklop
    Member

    Откуда: Украина
    Сообщений: 1027
    вадя
    а в чем проблема? у тебя твой скрипт грузится каждый раз с твоего сервера.
    кто мешает ранее сделанные настройки загрузить в скрипт?


    ну вот так и буду делать. да.

    Осталось понять как хранить настройки.
    4 мар 19, 13:37    [21824312]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    вадя
    Member

    Откуда: Екатеринбург
    Сообщений: 16319
    Tsyklop
    Осталось понять как хранить настройки.
    дак я вроде показал структуру.....
    с рекомендацией mayton и моих корректировок 21823585 можно сэкономить размер таблиц
    4 мар 19, 13:53    [21824347]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Tsyklop
    Member

    Откуда: Украина
    Сообщений: 1027
    вадя
    дак я вроде показал структуру.....
    с рекомендацией mayton и моих корректировок 21823585 можно сэкономить размер таблиц

    а как хранить шаблон параметров? или где хранить.
    4 мар 19, 13:59    [21824360]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 41895
    Шаблон виджета - тоже виджет. Можешь пометить его каким-то символом. Чтоб различать.
    4 мар 19, 14:02    [21824367]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Tsyklop
    вадя
    а в чем проблема? у тебя твой скрипт грузится каждый раз с твоего сервера.
    кто мешает ранее сделанные настройки загрузить в скрипт?


    ну вот так и буду делать. да.

    Осталось понять как хранить настройки.

    Я показал как мне удобнее для владельца сайта.
    Даже места указал - 4 штуки.
    Просто тебе от бэк прогера надо в js немного свитчеваться)))
    4 мар 19, 14:11    [21824379]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    Tsyklop
    Member

    Откуда: Украина
    Сообщений: 1027
    Petro123
    Я показал как мне удобнее для владельца сайта.
    Даже места указал - 4 штуки.
    Просто тебе от бэк прогера надо в js немного свитчеваться)))


    С фроном и т.д. не проблема, вообще. У меня сейчас задача сохранить это на беке, что бы отдавать клиенту и тому же виджету.

    Буду пробовать делать разными способами в общем.
    4 мар 19, 17:42    [21824690]     Ответить | Цитировать Сообщить модератору
     Re: Хранение настроек сайта  [new]
    вадя
    Member

    Откуда: Екатеринбург
    Сообщений: 16319
    Tsyklop
    У меня сейчас задача сохранить это на беке, что бы отдавать клиенту и тому же виджету.
    какая в этом проблема? Обратиться к базе и заполнить что-то в строке скрипта ?
    4 мар 19, 18:49    [21824757]     Ответить | Цитировать Сообщить модератору
    Топик располагается на нескольких страницах: 1 2 3 4 5 6      [все]
    Все форумы / Java Ответить