我安装了来自pip install -e git+http://git@github.com/divio/django-polls.git#egg=polls
的app民意调查。应用程序已保存/me/env/src/polls/
。我从/me/project/
运行服务器。我得到一个错误Poll插件无法导入。我如何定义该民意调查应用程序使用自己的模型。
现在我想在我的模板中创建插件和占位符。
cms_plugins.py
from cms.plugin_base import CMSPluginBase
from cms.plugin_pool import plugin_pool
from polls.models import PollPlugin as PollPluginModel
from django.utils.translation import ugettext as _
class PollPlugin(CMSPluginBase):
model = PollPluginModel # <--not sure what to put here.
name = _("Poll Plugin") # Name of the plugin
render_template = "polls/plugin.html" #
def render(self, context, instance, placeholder):
context.update({'instance':instance})
return context
plugin_pool.register_plugin(PollPlugin) # register the plugin
轮询/ models.py
class Poll(models.Model):
question = models.CharField(max_length=200)
def __unicode__(self): # Python 3: def __str__(self):
return self.question
class Choice(models.Model):
poll = models.ForeignKey(Poll)
choice_text = models.CharField(max_length=200)
votes = models.IntegerField(default=0)
def __unicode__(self): # Python 3: def __str__(self):
return self.choice_text
答案 0 :(得分:0)
首先你需要添加新的应用程序。
定义PollPluginModel并将其与poll关联 民调/模型 来自django.db导入模型 从cms.models导入CMSPlugin 来自polls.models import Poll
+-------+------------+------------+------------+
|user_id| actions | nb_of_occ | order |
+-------+------------+------------+------------+
| 217498| 'A' | 3 | 1 |
| 217498| 'B' | 1 | 2 |
| 217498| 'C' | 2 | 3 |
| 217498| 'A' | 1 | 4 |
| 217498| 'B' | 2 | 5 |
| 854123| 'A' | 2 | 1 |
| etc.
请检查http://docs.django-cms.org/en/release-3.4.x/introduction/plugins.html。这是插件的完整教程。