亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Django admin:如何獲取上傳文件的路徑

Django admin:如何獲取上傳文件的路徑

不負相思意 2023-06-27 16:13:22
我已經為 User Pic 和 User_pic_url 創建了模型字段,我想做的是當我上傳圖像時,它的路徑應該填充在 user_pic_url 中。請注意,我正在從 django admin 本身上傳圖像。任何想法。Model.py:class Main(models.Model):? ? name = models.CharField(max_length=50)? ? address = models.CharField(max_length=100)? ? about = models.TextField()? ? contact = models.CharField(default='0', max_length=12)? ? email = models.CharField(default='-', max_length=50)? ? linkedin = models.CharField(default='-', max_length=50)? ? github = models.CharField(default='-', max_length=50)? ? site_name = models.CharField(default='-', max_length=50)? ? resume = models.FileField()? ? cover_letter = models.FileField()? ? user_pic = models.ImageField()? ? user_pic_url = models.TextField(default="-")
查看完整描述

2 回答

?
犯罪嫌疑人X

TA貢獻2080條經驗 獲得超4個贊

考慮以下模型,使用 ImageField 來存儲照片:


class Car(models.Model):

? ? name = models.CharField(max_length=255)

? ? price = models.DecimalField(max_digits=5, decimal_places=2)

? ? photo = models.ImageField(upload_to='cars')

任何 Car 實例都會有一個照片屬性,您可以使用該屬性來獲取所附照片的詳細信息:


car = Car.objects.get(name="57 Chevy")

car.photo

<ImageFieldFile: cars/chevy.jpg>

car.photo.name

'cars/chevy.jpg'

car.photo.path

'/media/cars/chevy.jpg'

?car.photo.url

'http://media.example.com/cars/chevy.jpg'


查看完整回答
反對 回復 2023-06-27
?
至尊寶的傳說

TA貢獻1789條經驗 獲得超10個贊

你不需要一個user_pic_url字段。您可以從字段本身獲取數據user_pic


class Main(models.Model):

    # rest of your fields

    user_pic = models.ImageField()


    @property

    def user_pic_url(self):

        return self.user_pic.url

現在,您可以直接訪問 URL,如下所示:


model_instance = Main.objects.first()

print(model_instance.user_pic_url)


查看完整回答
反對 回復 2023-06-27
?
達令說

TA貢獻1821條經驗 獲得超6個贊

如果您想首先獲取上傳的路徑,請確保您已在 settings.py 中配置 MEDIA_URL MEDIA_ROOT,并且還必須將文檔中給出的媒體 url 的放置 url 模式放入其中

如果您已經這樣做了,您只需放置查詢集

obj = Main.objects.all().first()

像這樣,當你獲取任何對象時,你必須轉到圖像字段并在之后添加 url,就像這樣,你必須只在圖像字段中的所有配置之后添加 url

 print(obj.user_pic.url) <---------you can get your url like this


查看完整回答
反對 回復 2023-06-27
  • 2 回答
  • 0 關注
  • 236 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號