phpエディタYouziは今日、Gorm作成フォームデータファイルのアップロードエラーの問題を紹介します。開発プロセスでは、ファイルをアップロードする必要が頻繁に発生します。Gorm は、便利なデータベース操作方法を提供する強力な ORM ライブラリです。ただし、フォームデータファイルのアップロードにGormを使用すると、エラーが発生することがあります。この記事では、これらのエラーを分析し、この問題に適切に対処するのに役立つ対応する解決策を提供します。
postgresqlサーバーにレコードを作成しようとしています。リクエストはマルチパート形式のファイルデータとして送信されます。ファイルを自分側にアップロードした後、gorm.create を呼び出しますが、エラーがスローされます。
ファイルアップロード部分をコメントアウトするとエラーは消えますが、ファイルをアップロードする必要があります。
これは私のコントローラー部分です:
リーリー ###私の要求:### ###間違い:### リーリーこれが私の構造です:
func (pc productcontroller) create(c *gin.context) { var product migrations.product if err := c.bind(&product); err != nil { c.json(400, gin.h{"error": err.error(), "message": "İşlem başarısız. lütfen tekrar deneyiniz veya sistem yöneticinize başvurun. hata kodu: pd-crt-01"}) return } if product.name == "" { c.json(400, gin.h{"error": "name is required", "message": "İşlem başarısız. lütfen ad alanını boş bırakmayınız. hata kodu: pd-crt-02"}) return } if product.price == 0 { c.json(400, gin.h{"error": "price is required", "message": "İşlem başarısız. lütfen fiş değeri alanını boş bırakmayınız. hata kodu: pd-crt-03"}) return } if product.id != 0 { c.json(400, gin.h{"error": "remove id field", "message": "lütfen tekrar deneyiniz veya sistem yöneticinize başvurun. hata kodu: pd-crt-id-01"}) return } file, err := c.formfile("image") if err != nil { c.json(400, gin.h{"error": err.error(), "message": "lütfen resim ekleyiniz. hata kodu: pd-crt-img-01"}) } filename := time.now().format("20060102150405") + "-" + strings.split(file.filename, ".")[0] + "." + strings.split(file.filename, ".")[1] dst := fmt.sprintf("./public/images/%s", filename) err = c.saveuploadedfile(file, dst) if err != nil { c.json(400, gin.h{"error": err.error(), "message": "lütfen tekrar deneyiniz veya sistem yöneticinize başvurun. hata kodu: pd-crt-img-02"}) return } product.image = &migrations.file{ path: filename, extension: strings.split(file.filename, ".")[1], } log.println(product) err = db.conn.create(&product).error if err != nil { c.json(400, gin.h{"error": err.error(), "message": "İşlem başarısız. lütfen tekrar deneyiniz veya sistem yöneticinize başvurun. hata kodu: pd-crt-04"}) return } c.json(http.statuscreated, gin.h{"message": "Ürün başarıyla eklendi.", "data": product}) return }
以上がGorm 作成フォーム データ ファイルのアップロード エラーの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。