Задать вопрос
  • Почему не принимает "data"?

    AlexNest
    @AlexNest
    Работаю с Python/Django
    Может для начала подучите питон?
    Откуда одна вьюха (читать функция) может о переменной, объявленной внутри другой?
    И да, почему data вне контекста?
    Ответ написан
    Комментировать
  • Как вставить html файл с кодом в основной?

    AlexNest
    @AlexNest
    Работаю с Python/Django
    Используйте шаблонизатор. Twig, например.
    Правда большинство (а может и все, специально не искал), требуют бекенд на php/python/nodeJS и т.д.
    Ответ написан
    Комментировать
  • Задача. Скачать файлы(robot.txt и sitemap.xml) с сайтов которые находятся в файле site_base.txt, как пройти по всем значениям?

    AlexNest
    @AlexNest Куратор тега Python
    Работаю с Python/Django
    Как-то так? Возможно несколько переусложнено и нет проверки на статускод (сами допишите, если надо), но оно работает
    # site_base.txt
    https://xakep.ru
    https://habr.com
    https://vc.ru
    
    # [file_name].py
    import requests
    import os
    def append_filename(url:str, filename:str) ->tuple:
        domain = url.split('//')[-1] 
        data = (domain,  url + '/' + filename)
        return data
    
    
    def save_file_to_disk(filename:str):
        if not os.path.exists('files'): os.mkdir('files')
        with open('site_base.txt', 'r', encoding='UTF-8') as site_base:
            sites_list = site_base.read().split('\n')
    
        urls_list = [append_filename(url, filename) for url in sites_list]
        for url in urls_list:
            try:
                domain = url[0]
                requested_url = url[1]
    
                response = requests.get(requested_url)
    
                saved_filename = domain+'_'+filename
                file_path = os.path.join('files',saved_filename)
    
                with open(file_path, 'a', encoding='UTF-8') as robots:
                    robots.write(response.text)
            except requests.exceptions.RequestException as e:
                print(e) 
    
    save_file_to_disk('robots.txt')
    save_file_to_disk('sitemap.xml')
    Ответ написан
    4 комментария
  • Работает ли SCSS, SASS во всех браузерах(втч. мобильных)?

    AlexNest
    @AlexNest
    Работаю с Python/Django
    Препроцессоры это не какой-то отдельный/новый "язык" заменяющий css. Они просто позволяют более комфортно и быстро создавать конструкции в css.
    После написания стилей их нужно преобразовать в css. Чем и как - зависит от многого
    (Можно через ide/gulp`ом/библиотекой для серверного ЯП)
    Ответ написан
    Комментировать
  • Как грамотно построить БД для заявок?

    AlexNest
    @AlexNest
    Работаю с Python/Django
    1) Заявки прикреплены к компании по id.

    А в чем проблема? Если таблицы связаны через FK на уровне базы то все ок. Реляционные базы как раз для этого и делали.
    2) Для всех заявок создана всего лишь одна таблица.
    Мне кажется, что нужно делать отдельные таблицы для каждой компании. Как сделать правильно?

    Зачем такое извращение? Какую проблему вы хотите решить, добавляя для каждой компании новую таблицу?
    Если нет конкретной причины (при том - очень весомой), по которой нужно реализовывать подобное, используйте текущее решение, ибо как минимум встает вопрос: а как вы будете пилить запросы? Prepeared statments/pdo не позволяют подставлять названия таблиц. Без них - будет проблема с безопасностью. Чтобы ее решить нужно будет городить лишний код и т.д.
    Ответ написан
    1 комментарий
  • Как сформулировать Json запрос чтобы изменить Css для div?

    AlexNest
    @AlexNest
    Работаю с Python/Django
    1. Это делается не с помощью стилей а методом фильтрации записей на уровне бекенда (в противном случае любой школьник при желании сможет "взломать" ваш сайт).
    2. Способ реализации зависит от серверного ЯП и фреймворка (если он есть)
    3. json каким боком тут участвует?

    Ответ написан
    Комментировать
  • Как работать с готовой базой данных sql?

    AlexNest
    @AlexNest Куратор тега Python
    Работаю с Python/Django
    Неужели так сложно загуглить?
    Букавально первая ссылка по запросу:
    sql server python
    Ответ написан
    Комментировать
  • Какие инструменты нужны чтобы сделать уведомление в Django?

    AlexNest
    @AlexNest
    Работаю с Python/Django
    Можно просто добавить внешний ключ к самому себе и булево поле is_read, отображащее, "увидел" ли автор родительского комента дочерний. Тогда достаточно будет выбрать по критерию:
    - дочерний коммент
    - не прочитан
    Это самая простая реализация, но неоптимальная с точки зрения запросов. По крайней мере на уровне ORM django.
    Можно создать отдельную таблицу, содержащие поля (условно):
    - оригинальный комментарий (или любой другой объект. см "content types" )
    - тип (лайк/ответ/т.д.)
    - прочитан ли
    Все это можно реализовать средствами django. Будет это выглядеть так, как сейчас это реализовано здесь - юзер обновляет страницу - показываются уведомления.
    Если нужно в реальном времени (как в вк/тг/дискорде) используйте сокеты.
    Ответ написан
    1 комментарий
  • Куда можно задеплоить телеграм бота с sqlite?

    AlexNest
    @AlexNest Куратор тега Python
    Работаю с Python/Django
    Бесплатно - никуда (кроме heroku).
    Платно - любой VDS.
    Касательно же heroku - там есть поддержка postgresql. При нормальной структуре кода переписать с sqlite на postgresql относительно просто.
    Ответ написан
    1 комментарий
  • Возможно ли создать операционную систему для игр сделанных на юнити?

    AlexNest
    @AlexNest
    Работаю с Python/Django
    Ну, в теории, можно сделать все. При наличии бюджета с 8+ нулями, пары лет, сотни толковых программистов и договоренностей с поставщиками оборудования, которые решатся создать дрова под вашу ось и, разумеется разрабов unity, согласившихся портировать движок на вашу ось (тоже, разумеется за сумму с приличными нулями).
    Ответ написан
    Комментировать
  • Как мне хранить информацию которая принадлежит пользователю?

    AlexNest
    @AlexNest
    Работаю с Python/Django
    Очевидно, что добавить внешний ключ к модели юзера.
    Примеров полно в документации, которую и следовало бы почитать новичкам (ну или хотя-бы заглядывать за отдельными моментами).
    Ответ написан
    Комментировать
  • Как в словарь добавить новый элемент по условию?

    AlexNest
    @AlexNest Куратор тега Python
    Работаю с Python/Django
    Проблема в том, что из-за повторных проходов данные затираются.
    Добавьте проверку, что значение accessory пустое.
    goods_dict = [
            {'id': '1', 'goods': 'macbook 16 pro', 'brand': 'Apple'},
             {'id': '2', 'goods': 'ThinkPad X1 Extreme Gen 3', 'brand': 'lenovo'},
             {'id': '3', 'goods': 'XPS 17 9710 Silver', 'brand': 'Dell'}
             ]
    #лист акссесуаров
    add_lists = [
            ['Apple','стилус'],
            ['lenovo','коврик'],
            ['hp','мышь'],
            ['asus','флешка']
           ]
    for item in add_lists:
            item_brand = item[0]
            item_name = item[1]
            print(item_brand)
            print('-',item_name)
            for good in goods_dict:
                    good_brand = good['brand']
                    print('--',good_brand)
                    if not good.get('accessory'):
                            if good_brand == item_brand:
                                    good['accessory'] = item_name
                            else:
                                    good['accessory'] = None
    for good in goods_dict:
            print(good)
    Ответ написан
    Комментировать
  • Как добавить в базу данных SQLite3 id пользователя и введенное им сообщение?

    AlexNest
    @AlexNest Куратор тега Python
    Работаю с Python/Django
    Я бы вам советовал почитать, для начала, что-нибудь по проектированию баз данных и sql.
    Просто такое ощущение, что вы тыкаете наугад, в надежде, что что-то да выйдет. При первом сообщении юзера, полагаю, все проходит нормально. А во второй раз выдает ошибку:
    sqlite3.IntegrityError: UNIQUE constraint failed: test.us_id
    .
    Что значит (относительно вольный перевод).
    sqlite3.IntegrityError: условие "УНИКАЛЬНОЕ значение" не соблюдено: test.us_id
    .
    Слово УНИКАЛЬНОЕ специально написано заглавными. К тому-же, у вас на скриншоте видно, что в графе уникальность стоит "галочка". Следовательно, с такой схемой таблицы, у одного юзера - одно сообщение.
    Ответ написан
    Комментировать
  • Есть код питон. Как исправить?

    AlexNest
    @AlexNest Куратор тега Python
    Работаю с Python/Django
    Для начала отложить ботописательство и изучить python.
    Например, по книге Марк Лутц - Изучаем python. 5-e издание.
    Без знания основ вы, каждый раз как будет выскакивать ошибка, будете бежать в гугл/сюда/на stackowerflow с подобными вопросами.
    Конкретно по вашему вопросу - в указанной книге пятый раздел первого тома полностью посвящен модулям, на отсутствие которого ругается интерпритатор.
    Ответ написан
    Комментировать
  • Как преобразовать список, полученный с базы данных, в словарь?

    AlexNest
    @AlexNest Куратор тега Python
    Работаю с Python/Django
    Возможно.
    Правда не очень понятно, что именно вы хотите сделать.
    Если превратить каждый отдельный кортеж, то напишите функцию такого вида:
    some_dict = {}
    some_dict["letter"] = db_row[0] # db_row - кортеж
    ...
    return some_dict

    После чего пройтись циклом и преобразовать каждый элемент.
    Если же нужно сделать из исходного списка словарь (в полезности и необходимости чего я сильно сомневаюсь), то это должно быть какие-то так:
    some_dict  = {}
    ... # do cycle
    some_dict[cha_index] = cha[cha_index] # cha_index - индекс значения в списке.
    Ответ написан
    Комментировать
  • Как подключить CRM битрикс в бот телеграм?

    AlexNest
    @AlexNest Куратор тега Python
    Работаю с Python/Django
    0.А оно надо?
    краткие тезисы по п.0

    Просто задайте себе эти вопросы для начала:
    • Действительно ли логика взаимодействия с пользователем настолько сложна, что нужно использовать монструозную (ничего не имею против, но в качестве "бекенда для бота" выглядит слишком тяжеловесно) систему, написанную на другом языке?
    • Не решит ли проблему использование ORM?
    • Если "сервер" все таки нужен (пока-что непонятно зачем), не лучше ли использовать python-решения (django+DRF, например)


    1.Если п.0 не переубедил, то вот, похоже, доки по api битрикса. Вот доки по requests, с помощью которых будете посылать запросы.
    Или отправьте на фриланс где не дорого за задачу возьмут. на кворке желающих не нашлось (

    3.Оно и понятно, с такими-то задачами. Но можете поискать удачи на хабр фриланс
    Ответ написан
  • Как редактировать данные модели через форму?

    AlexNest
    @AlexNest
    Работаю с Python/Django
    Добавляйте в форму (в оба вызова) параметр:
    form = RedactInfoUserForm(instance=some_user) # some_user - КОНКРЕТНЫЙ юзер из бд, выбранный по id/логину и т.д.
    Ответ написан
    Комментировать
  • Почему не отображаются данные?

    AlexNest
    @AlexNest Куратор тега Python
    Работаю с Python/Django
    По какому, конкретно, адресу? Проблема, возможно, в том, что у вас равносильные, с точки зрения парсера урлы:
    urlpatterns = [
        path('<int:cocktail_id>/', by_cocktail_id),
        path('<str:cocktail_name>/', by_cocktail_name),
        path('', index),
    
    
    ]


    И допустим есть урл вида: mysite.ru/1/
    И как django должен это понимать? 1 как строку, 1 как число?
    Для начала, выделите роуты более конкретно. Далее - проверяйте каждый роут отдельно. Есть как минимум несколько "точек внимания": Какие данные приходят? Находит ли django коктейли в базе (print в консоль)? Правильно ли передаются ли данные в шаблон?
    И да, использовать в качестве роута название в чистом виде - сомнительная практика. Как минимум, если в названии есть пробелы, то они заменятся на %20 И тогда в качестве параметра придет что-то вроде:
    имя%20коктейля
    Используйте slug
    Ответ написан
  • Как обработать данные в телеграм боте (телебот)?

    AlexNest
    @AlexNest Куратор тега Python
    Работаю с Python/Django
    Очевидно, что содержимое call.message.text не может быть преобразовано в число.
    Возможно есть лишнее буково-символьное содержание, возможно вообще является неподдерживаемым типом (list/dict, что-то еще (не знаком с конкретно этой либой)). Проверяйте что приходит. Если нужно - выделяйте нужную часть (split/slice или любым другим способом). Если виноват юзер, присылающий непотребства, валидируйте.
    Ответ написан
    Комментировать
  • Как использовать токен авторизации в обычных представлениях?

    AlexNest
    @AlexNest
    Работаю с Python/Django
    Никак.
    Стандартные методы Django не знают и не могут знать о том, какими ресурсами оперируют сторонние модули (по крайней мере, без костылей).
    Решение здесь одно - не изобретать велосипед и использовать готовые решения из DRF.
    Если уж так хочется использовать "стандартные" представления - то используйте Function Based Views
    Ответ написан
    1 комментарий