Есть web-приложение на Angular 1.7, которое представляет из себя клиент без сервера.
Хочу подключить туда Python, чтобы получать данные из PostgreSQL для приложения на лету.
Какие есть варианты для меня?
Я пока придумал перегонять скриптом из PostgreSQL с помощью Python данные в MondoDB и потом из web-приложения получать данные, но может быть есть способ проще? Допустим всю логику можно как-то написать на Python, а у скрипта оставить только лишь визуализацию, и чтобы это работало с нормальной скоростью?
Алексей Скляров, В этом и заключается вопрос как отдавать?
Сервер у меня файловый, запускается командой ng serve, я захожу в браузер и вижу свою реализацию
Flaskapp это и есть сервер, который обрабатывает запросы от клиентов, выдает им контент по запросу.
Для начала надо хотя бы прочитать https://habr.com/post/346306/
Нельзя просто взять и начать писать - вначале нужно составить техзадание(которое даст хотя бы примерное представление результата и соберет все мысли в кучу) потом составить структурную схему работы с приложением чтобы понять где и что должно запрашиваться с сервера и что и куда должен отправлять клиент. Если есть возможность хранить все в голове - то никто не заставляет, но должно быть понимание как это работает в целом.
Александр, Еще прочитал, что лучше поначалу использовать Django, так как там все из коробки, сразу создается правильная струтура, больше ответов на вопросы, лучше документация.
Jhn Doe from by, Не знаю насколько она дурацкая, но в ней мне хотя бы удалось разобраться. Даже записал видео, чтобы лучше запомнить. https://www.youtube.com/watch?v=nsdbSwOobQY&t=5s
Если не трудно, вы не могли бы дать совет как мне теперь оптимальней передавать всю информацию, получаемую таким способом во Flask на лету в мой скрипт на Javascript/Typescript. Единственное что я придумал - это записать в MongoDB, и клиентом ее сразу же читать оттуда.
Олег Петров, хм...а каким образом клиент может влезть в базу данных? вы не путаете node.js и javascript?
Как как, рендерить шаблоны самим фласком, в шаблоны из фласка передавать нужные данные и из jinja шаблонизатора их подставлять в javascript,
в pythone что-то вроде
render_template({'some_value': 123}, 'mytemplate.html')
а в mytemplate.html
< script >
var x = {{ some_value }};
< / script >
хотя и javascriptом их можно отрендерить после загрузки страницы, сделав xhr/fetch get запрос на бэкэнд, распарсить json и выдать на экран
Jhn Doe from by, СОздал Такое app:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
render_template({'some_value': 123}, 'mytemplate.html')
return "Hello, World!"
if __name__ == "__main__":
app.run()
----------------------------
Потом создаю
mytemplate.html
С содержанием
< script >
var x = {{ some_value }};
< / script >
Александр, Спасибо большое, все теперь работает!
ТЕперь я захожу на 127.0.0.1:5000
И вижу < script > var x = 123; < / script >
Переменная передается. Как я понял теперь ее можно как-то обновлять довольно часто и она обновится автоматом на страничке?