Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在Flask Admin中将图像添加到MongoDB图像列表时出错_Python_Flask_Mongoengine_Flask Admin - Fatal编程技术网

Python 在Flask Admin中将图像添加到MongoDB图像列表时出错

Python 在Flask Admin中将图像添加到MongoDB图像列表时出错,python,flask,mongoengine,flask-admin,Python,Flask,Mongoengine,Flask Admin,我有这个模型: class Merchandise(Document): image_gallery = ListField(ImageField(collection_name='image')) 在Flask Admin中添加图像时,出现以下错误: Traceback (most recent call last): File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/fl

我有这个模型:

class Merchandise(Document):
   image_gallery = ListField(ImageField(collection_name='image'))
在Flask Admin中添加图像时,出现以下错误:

Traceback (most recent call last):
  File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/flask/app.py", line 1836, in __call__
    return self.wsgi_app(environ, start_response)
  File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/flask/app.py", line 1820, in wsgi_app
    response = self.make_response(self.handle_exception(e))
  File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/flask/app.py", line 1403, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/flask/app.py", line 1817, in wsgi_app
    response = self.full_dispatch_request()
  File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/flask/app.py", line 1477, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/flask/app.py", line 1381, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/flask/app.py", line 1475, in full_dispatch_request
    rv = self.dispatch_request()
  File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/flask/app.py", line 1461, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/flask_admin/base.py", line 68, in inner
    return self._run_view(f, *args, **kwargs)
  File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/flask_admin/base.py", line 344, in _run_view
    return fn(self, *args, **kwargs)
  File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/flask_admin/model/base.py", line 1374, in edit_view
    if self.update_model(form, model):
  File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/flask_admin/contrib/mongoengine/view.py", line 536, in update_model
    if not self.handle_view_exception(ex):
  File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/flask_admin/contrib/mongoengine/view.py", line 534, in update_model
    model.save()
  File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/mongoengine/document.py", line 224, in save
    self.validate(clean=clean)
  File "/home/lov3catch/lov3catch_venvs/profit_sellet/lib/python2.7/site-packages/mongoengine/base/document.py", line 323, in validate
    raise ValidationError(message, errors=errors)
ValidationError: ValidationError (Merchandise:54c0190f39731e3198f93c6d) ('NoneType' object has no attribute 'grid_id': ['image_gallery'])
如何修复此问题?

类似的问题

class Media(EmbeddedDocument):
   img = ImageField(collection_name='image')

class Merchandise(Document):
   image_gallery = ListField(EmbeddedDocumentField(Media))

面对同样的问题,在我的例子中,“image_gallery”也是字段名:)我做了一个变通,将image字段放在嵌入的文档中,将嵌入的文档放在list字段中。在我的情况下,它达到了它的目的。你能发布你如何修复它的代码吗@Arshadansarit代码没有作为注释正确出现,所以我将其作为答案分享。。