• Как обойти ошибку CORS при получении картинки из cdn facebook?

    @cart__man Автор вопроса
    Rsa97, спасибо. Буду работать в этом направлении.
    Написано
  • Как обойти ошибку CORS при получении картинки из cdn facebook?

    @cart__man Автор вопроса
    Бэкенд на django, шаблоны на jinja.... Можно пример каким образом мне на бэкенде запросить картинку? И при таком подходе мне придется хранить кучу картинок на бэкенде ?
    И кстати, если я в браузер вставлю эту ссылку - она откроется и покажет картинку... Я не очень просто понимаю как это работает....
    Написано
  • Django Model фильтрация по свойству модели в queryset modelform.field как правильно делать?

    @cart__man Автор вопроса
    aleks-th, я так понимаю что речь про
    choices = (x for x in AccountModel.objects.filter(status=2, user_id=args[0]["user_id"]) if x.task_inwork_count == 0)


    Короче уже понял что генератор тут оставлять не правильно. так как далее
    self.fields["account"].queryset
    и он требует Модель.

    Мне надо ему дать AccountModel.objects.filter(status=2, user_id=args[0]["user_id"]), но что бы она еще фильтровалась по @property task_inwork_count
    Написано
  • Datatables показывает 50 строк из датасета, как отобразить весь датасет в таблице?

    @cart__man Автор вопроса
    Антон Горецкий, Спасибо от всей души, натолкнул на верную мысль, проблема была не в datatables, а в DRF, в настройках
    REST_FRAMEWORK = {...} есть директива "PAGE_SIZE", она по умолчанию со значением 50
    Написано
  • Datatables показывает 50 строк из датасета, как отобразить весь датасет в таблице?

    @cart__man Автор вопроса
    black1277, это не то.
    Проблема вот в чем, с сервера мне возвращается JSON:
    {
      "recordsTotal": 460,
      "recordsFiltered": 460,
      "data": [ ...]
    }


    Но при этом сама таблица показывает только 50 записей и не больше
    667d0af78c7a9372284916.png
    Написано
  • Datatables показывает 50 строк из датасета, как отобразить весь датасет в таблице?

    @cart__man Автор вопроса
    ProjectSoft, ниже ответом на свой пост указал)
    Написано
  • Datatables показывает 50 строк из датасета, как отобразить весь датасет в таблице?

    @cart__man Автор вопроса
    Извиняюсь, писал с телефона, вот скрипт, который за таблицу отвечает.
    function format(d) {
    var uchred = ''
    var directors = ''
    for (iter of d.founder) {
    uchred = uchred +
                '<tr>' +
                '<td>' + iter.inn + '</td>' +
                '<td>' + iter.name + '</td>' +
                '<td>' + iter.percent + '</td>' +
                '<td>' + iter.nominal +'</td>' +
                '<td>' + iter.key + '</td>' +
                '</tr>'
    
    }
    for (iter of d.chief) {
    directors = directors +
        '<tr>' +
            '<td>' + iter.inn + '</td>' +
            '<td>' + iter.name + '</td>' +
            '<td>' + iter.post + '</td>' +
            '<td>' + iter.link + '</td>' +
            '<td>' + iter.key + '</td>' +
        '</tr>'
    }
    
    var form = '<table class="table caption-top" style="width:100%">' +
    '<caption>Учредители</caption>' +
            '<thead>' +
            '<tr>' +
            '<th scope="col">' + 'ИНН' + '</th>' +
            '<th scope="col">Учредитель</th>' +
            '<th scope="col">Доля %</th>' +
            '<th scope="col">Доля RUB</th>' +
            '<th scope="col">Ключ</th>' +
            '</tr>' +
            '</thead>' +
            '<tbody>' +
            '<tr>' +
            '<td>' + uchred + '</td>' +
            '</tr>' +
            '</tbody>' +
            '</table>' +
    
            '<table style="width:100%">' +
            '<caption>Руководители</caption>' +
            '<thead>' +
            '<tr>' +
            '<th scope="col">ИНН</th>' +
            '<th scope="col">ФИО</th>' +
            '<th scope="col">Должность</th>' +
            '<th scope="col">Также руководит</th>' +
            '<th scope="col">Ключ</th>' +
            '</tr>' +
            '</thead>' + '<tbody>' +
               '<tbody>' +
               directors +
               '</tbody>' +
            '</table>'
        return (form);
    }
    
    let table = new DataTable('#example', {
        ajax: '/api/results/?format=datatables',
        deferRender: false,
        columns: [
            {
                className: 'dt-control',
                orderable: false,
                data: null,
                defaultContent: ''
            },
            { data: 'okopf' },
            { data: 'parent_token' },
            { data: 'name' },
            { data: 'inn' },
            { data: 'contacts.Тел[   ]'},
            { data: 'contacts.Емэйл[   ]' },
            { data: 'contacts.ВебСайт' },
            { data: 'revenue' },
            { data: 'income' },
            { data: 'status' },
            { data: 'post' },
            { data: 'add_date' },
            { data: 'work_status' },
            { data: 'gb_done' },
            { data: 'gb_info' },
            { data: 'gb_file', "render": function ( data, type, full, meta ) {
          return '<a href="'+data.replace('api/results/media/', '')+'/" target="_blank">'+data.replace('api/results/media/', '').replace('%23', '')+'</a>';}}
        ],
        paging: true,
    <!--    exportOptions : {},-->
    <!--    order: [[2, 'asc'], [10, 'asc']],-->
    
        language: {
              lengthMenu: 'Показать _MENU_ записей',
              "emptyTable":     "Нет данных для отображения",
              search: "Поиск в таблице:",
              "info":           "Показано с _START_ по _END_ из _TOTAL_ записей",
              "infoEmpty":      "Показано 0 из 0 записей",
              "loadingRecords": "Загрузка...",
        },
        columnDefs: [],
        layout: {
              top2Start: 'pageLength',
              topStart: 'buttons',
              },
        select: true,
        serverSide: false,
        processing: true,
        ordering: true,
        searching: true,
    
    });
    
    
    
    table.on('click', 'td.dt-control', function (e) {
        let tr = e.target.closest('tr');
        let row = table.row(tr);
    
        if (row.child.isShown()) {
    
            row.child.hide();
        }
        else {
            row.child(format(row.data())).show();
        }
    });
    Написано