事实上,我对Django cms世界还不熟悉。我试过几乎每一个重复的问题,但没有一个有效。我用一个ManyToManyField()创建了我的自定义插件
我查阅了Django文档中的多对多或外键与其他对象的关系,但没有起到任何作用。也许我在什么地方迷路了,我真的很感激任何帮助。谢谢你
class PortfolioPluginModel(CMSPlugin):
portfolio = models.ManyToManyField(Portfolio)
class PortfolioPluginModel(CMSPlugin):
portfolio = models.ManyToManyField(Portfolio)
def copy_relations(self, oldinstance):
for p in oldinstance.portfolio.all():
p.pk = None
p.plugin = self
p.save()
class PortfolioPluginModel(CMSPlugin):
portfolio = models.ManyToManyField(Portfolio)
def copy_relations(self, oldinstance):
self.portfolios = oldinstance.portfolios.all()
应用程序模型:
class Portfolio(models.Model):
author = models.CharField(max_length = 100)
description = models.TextField()
image = models.ImageField(upload_to ='portfolioImage',blank = True, null = True)
published_at = models.DateTimeField(auto_now_add = True)
cms\ U插件.py
@plugin_pool.register_plugin # register the plugin
class PortfolioPluginPublisher(CMSPluginBase):
model = PortfolioPluginModel # model where plugin data are saved
# model = Portfolio(CMSPlugin)
module = _("Portfolio")
name = _("Portfolio Plugin") # name of the plugin in the interface
render_template = "portfolio_cms_integration/portfolio_plugin.html"
cache = False
def render(self, context, instance, placeholder):
context.update({'instance': instance})
return context
公文包插件.html
<div class="filters-content">
<div class="row grid">
{% for p in instance.portfolio.all %}
<div class="single-portfolio col-sm-4 all vector">
<div class="relative">
<div class="thumb">
<div class="overlay overlay-bg"></div>
<img class="image img-fluid" src="{{ p.image.url }}" alt="" style="width:399px; height: 400px;">
</div>
<a href="{{ p.image.url }}" class="img-pop-up">
<div class="middle">
<div class="text align-self-center d-flex"><img src="{% static 'img/preview.png' %}"
alt=""></div>
</div>
</a>
</div>
<div class="p-inner">
<h4>{{ p.author }}</h4>
<div class="cat">{{ p.description }}</div>
</div>
</div>
{% endfor %}
</div>
预期输出:When I publish my post I should see my model objects of portfolio app
实际输出:When I publish my post I dont see any model objects of portfolio app
目前没有回答
相关问题 更多 >
编程相关推荐