Как получить URL изображений, размещенных в Dropbox, чтобы использовать его в режиме отладки (django) - PullRequest
0 голосов
/ 06 марта 2020

Я постараюсь быть максимально ясным, поскольку есть некоторые вещи, которые я не до конца понимаю, как они работают. Я разрабатываю страницу, на которой администратор может изменить изображение одного или любого продукта, который он хочет, поэтому я храню изображения в своей учетной записи разработчика Dropbox, нет проблем с загрузкой изображения на страницу, которая размещена на heroku, но Я хочу получить URL-адрес изображения, загруженного пользователем, и передать его в html, чтобы специально загрузить это изображение, размещенное в dropbox.

Вот метод, который я использовал в своей модели для получения url:

class TProducto(models.Model):
    id = models.AutoField( primary_key=True)
    Nombre = models.CharField(max_length=255, blank=True, null=True)
    Descripcion = models.CharField(max_length=255, blank=True, null=True)
    Costo = models.FloatField(default=0)
    Descuento = models.IntegerField(default=0)
    Coleccion = models.ForeignKey(TColeccione, on_delete=models.SET_NULL, blank=True, null=True)
    Foto_Producto = models.ImageField(upload_to="productos", blank=True, null=True);

    def get_img(self):
        return self.Foto_Producto.url

Это часть моих настроек:

# <=================== CONFIGURACION DE DROPBOX =============>
DEFAULT_FILE_STORAGE = 'storages.backends.dropbox.DropBoxStorage'
DROPBOX_OAUTH2_TOKEN = '<REDACTED>'
DROPBOX_ROOT_PATH = 'media'
# <=================== CONFIGURACION DE DROPBOX =============>

И в этой части я хочу получить URL из выпадающего списка для динамического получения URL изображения, которое клиент загружено в Dropbox:

{% block content %}
    <section id="colecciones">
      <div class="container">
        <h2 class="subtitle">{{titulo}}</h2>

        {% for coleccion in colecciones %}
          <a href="/productos_coleccion/{{coleccion.id}}">
            <div class="row">
              <div class="col-sm-4">
                <div class="box-left">
                  <h2>{{coleccion.Nombre}}</h2>
                </div>
              </div>

              <div class="col-sm-8">
                <div class="box-img" style="background: linear-gradient(rgba(131, 131, 131, 0.3), rgba(131, 131, 131, 0.3)), url('{{coleccion.get_img}}');"></div>
              </div>
            </div>
          </a>
        {% endfor %}
      </div>
    </section>

Это можно сделать с помощью Dropbox, или я пытаюсь сделать что-то, что не может быть сделано? Это потому, что я пытаюсь сделать это локально?

...