by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
    Dmitry Sikorsky
    @DmitrySikorsky
    Dzmuh
    @Dzmuh
    А что если задействовать для установки базы данных, разворачивания sql скриптов, FluentMigrator?
    • https://github.com/fluentmigrator/fluentmigrator
      Миграции можно накатывать как через консоль, так и собственно с самого приложения.
      При рассмотрении вопроса готов предоставить схему для 1.0.0-beta4 отработанную на SQLite.
    Пронин Андрей
    @KANekT
    а чем это отличается от стандартных мигораций ?
    Dzmuh
    @Dzmuh
    Можно и стандартные миграции использовать. Тоже отлично.
    Лично я больше взаимодействовал с FluentMigrator, поэтому и о нём сразу повёл речь. Вдобавок в нём можно вызывать внешние и внедрённые SQL скрипты и я не знаю есть ли это в штатном миграторе EFCore.
    Использование штатного выглядит более привлекательно.
    Dmitry Sikorsky
    @DmitrySikorsky
    Пока даже не знаю. Я щас сконцентрировался на е-Коммерс, мы тут с ребятами продумали его, хочется уже закончить. Ближе к RC нужно будет продумать переходы между версиями и обновление БД.
    Saeid
    @sbabaei
    Does it support modularity ?
    Dmitry Sikorsky
    @DmitrySikorsky
    @sbabaei sure. it is based on ExtCore framework: http://extcore.net/
    danis-arslanov
    @danis-arslanov
    @DmitrySikorsky Здравствуйте, Дмитрий. Усердно пытался по инструкции запустить Platformus с исходным кодом, но к сожалению, не получилось. Можно ли Вас попросить обновить инструкцию? Скорее всего это связано с моей неопытностью и кривотой рук, хотел разобраться, как написать модуль, чтобы внести коррективы под проект, создаваемый на Platformus. Ругается на this.extensionsPath, когда ввожу эту переменную на примере Ваших samples, начинает ругаться на StorageContextOptions.
    Dmitry Sikorsky
    @DmitrySikorsky
    Добрый день @danis-arslanov !
    Напишите, пожалуйста, мне в скайп. Я постараюсь помочь
    Алексей
    @py6jlb
    Всем, привет. Кто нибудь делал фильтрацию элементов меню под пользователя? Для анонимного одно для зарегистрированного другое. Если делали то поделитесь как делали?
    Disflippant
    @Disflippant
    Hi. Where would I find the default password for the personal web page sample project?
    Gah. I'm an idiot. Found it.
    Dmitry Sikorsky
    @DmitrySikorsky
    @py6jlb добрый вечер! думаю, проще всего сделать 2 меню и показывать либо одно, либо второе.
    @Disflippant :)
    Алексей
    @py6jlb
    @DmitrySikorsky добрый вечер. Двумя меню не обойтись) там в зависимости от прав нужно пункты показывать.
    Dmitry Sikorsky
    @DmitrySikorsky
    тогда нужно сделать собственный view component, примерно такой, как строит меню в админке. он там как раз учитывает права
    Алексей
    @py6jlb
    да, спасибо. Я примерно так и хотел поступить.
    Алексей
    @py6jlb
    Всем привет. Кто использует PostgreSQL, подскажите нет ли проблем с контекстом БД, у меня с sqlite все нормально работает, но когда хотел перенести все на POstgreSQL обнаружил что при попытке создать новый Объект вылетает ошибка "InvalidOperationException: A second operation started on this context before a previous operation completed. Any instance members are not guaranteed to be thread safe." Если кто нибудь сталкивался подскажите как решали.В проекте использую код с GitHub(не nuget) последняя версия из master, скрипты для схемы и данных БД от туда же.
    Dmitry Sikorsky
    @DmitrySikorsky
    Приветствую! Очень много работал с PostgreSQL, проблем не было. Может быть вы используете собственное расширение для Платформуса и там не вызываете, например, ToList() после доставания данных из базы, и поэтому у вас обращение в базу фактически происходит где-то из представления?
    Алексей
    @py6jlb
    @DmitrySikorsky , здравствуйте. Я использовал код из вашего репозитория без изменений, в итоге прошелся по всем реализациям репозиториев для PostgreSQL и добавил ToArray(), к методам которые возвращают IEnumerable<T>, этого не было ни в местах использования ни в реализации репозиториев.В своих дополнениях я везде использовал ToArray(), столкнулся с ошибками в репозиториях модуля Domain. Сейчас другая проблема, после сборки приложения и выполнения команды dotnet publish, я размещаю приложение на сервере и у меня отваливаются все встроенные в пакеты статические файлы(скрипты и стили), и я пока не понял почему. Подскажите как и в каком месте приложение распознает путь до файла разделенный точками, например "/wwwroot.areas.backend.css.platformus.routing.min.css", я нашел код отвечающий за формирование пути но не могу найти обработчик этого запроса, буду благодарен.
    Dmitry Sikorsky
    @DmitrySikorsky
    это происходит в ExtCore, CompositeFileProvider
    Алексей
    @py6jlb
    @DmitrySikorsky, спасибо буду смотреть.
    aliaksandrhuryn
    @aliaksandrhuryn
    @DmitrySikorsky , подскажите пожалуйста, как лечить? InvalidOperationException: The AuthorizationPolicy named: 'HasBrowseConfigurationsPermission' was not found.
    Dmitry Sikorsky
    @DmitrySikorsky
    @aliaksandrhuryn добрый день! странно. это вы свое расширение сделали, или при использовании стандартных возникает исключение?
    Алексей
    @py6jlb
    @DmitrySikorsky доброго времени суток. Ни как не могу разобраться со связями классов в админке. Создал класс, добавил член класса который должен связывать его с коллекцией(как я понял) другого класса(указывается в настройках связи), но когда пытаюсь получить доступ к этому полю во вьюхе получаю ошибку. Подскажите как работать со связями или скиньте ссылку на документацию(сам не смог найти).
    Dmitry Sikorsky
    @DmitrySikorsky
    связи, которые описываются в админке, они просто описывают связи в контексте данных. это не означает, что графы будут целиком загружаться и будут доступны из представлений. загрузкой данных управляют источники данных (дата сорсы). т.е. если вам нужен объект с его связями - вам нужно добавить датасорс, который загрузит объект с его связями. стандартные встроенные источники данных позволяют указать путь внути объекта, который нужно загрузить рекурсивно. например, можно загрузить пост блога, его комментарии и все теги комментариев.
    поле Nested XPath
    в свойствах дата сорса
    либо если нужно выгрузить объекты связанные с текущим, то можно исплользовать RelatedObjectsDataSource, и просто указать какого класса связанные объекты нужно вытащить
    там же поддерживается и пагинация
    да, это нужно подробнее описать в документации - времени не хватает
    Алексей
    @py6jlb
    @DmitrySikorsky спасибо. А можно пример использования поля Nested XPath
    Dmitry Sikorsky
    @DmitrySikorsky
    Навскидку не вспомню. Но суть простая. Если вы выгребаете, например, объекты класса BlogPost
    и назвали код источника данных BlogPosts
    то объекты у вас будут доступны по свойству BlogPosts внутри представления
    если же например у каждого поста есть теги, то вы просто пишете туда /Tags
    кстати, вспомнил, вот же оно есть:
    вот тут теги отображаются как раз таким образом
    Алексей
    @py6jlb
    Супер. Спасибо еще раз. Буду смотреть.
    Dmitry Sikorsky
    @DmitrySikorsky
    я как раз это добавил в пример, чтобы было ясно
    ну а если у тегов было бы еще какое-то свойство-отгошение, его можно было бы тоже выбрать написав не /Tags, а /Tags/SomeTagProperty
    и так далее, рекурсивно
    Алексей
    @py6jlb
    теперь понятно. я просто смотрел в примере который не Blog а Website и там такого не увидел.
    Алексей
    @py6jlb
    @DmitrySikorsky, день добрый. Подскажите как разместить приложение на Платформусе за реверс прокси Nginx с использованием поддиректорий, например приложение висит на порту 5000 а на nginx прописан проброс с адреса {domain name}/app на localhost:5000, у меня проблема со ссылками, я не найду где в платформусе задать контекст для ссылок. Почти все ссылке не работают, картинки и остальная статика не грузится.
    Dmitry Sikorsky
    @DmitrySikorsky
    Алексей, к сожалению, не могу подсказать, т.к. не пробовал. Я в основном работаю со стеком Microsoft. Ребята размещали приложения на Платформусе на Linux, но я не вникал, как именно. Но я думаю, что здесь нет какой-либо специфики именно связанной с Платформусом. Думаю, все так же, как и в обычных приложениях на ASP.NET Core.