Skip to content

Commit ff7002c

Browse files
committed
Remove component link mixin
1 parent 982739e commit ff7002c

File tree

4 files changed

+10
-7
lines changed

4 files changed

+10
-7
lines changed

docs/source/custom_components.rst

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ Add a ``cms_components.py`` file to the ``theme`` app:
4545
.. code-block:: python
4646
4747
# theme/cms_components.py
48+
from djangocms_link.fields import LinkFormField
49+
4850
from djangocms_frontend.contrib.component.components import ComponentLinkMixin, CMSFrontendComponent
4951
from djangocms_frontend.contrib.component.components import components
5052
from djangocms_frontend.contrib.image.fields import ImageFormField
@@ -77,6 +79,7 @@ Add a ``cms_components.py`` file to the ``theme`` app:
7779
allow_children = False
7880
7981
text = forms.CharField(required=True)
82+
link = LinkFormField()
8083
8184
def get_short_description(self):
8285
return self.text

tests/component/test_plugins.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,8 @@ def test_simple_component_plugin(self):
152152
instance.config["link"] = {"internal_link": f"cms.page:{self.page.pk}"}
153153
instance.save()
154154

155-
link = instance.get_link()
155+
from djangocms_link.templatetags.djangocms_link_tags import to_url
156+
link = to_url(instance.link)
156157

157158
self.publish(self.page, self.language)
158159

tests/test_app/cms_components.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
from django import forms
2+
from djangocms_link.fields import LinkFormField
23

3-
from djangocms_frontend.contrib.component.components import (
4-
CMSFrontendComponent,
5-
ComponentLinkMixin,
6-
)
4+
from djangocms_frontend.contrib.component.components import CMSFrontendComponent
75
from djangocms_frontend.contrib.component.registry import components
86
from djangocms_frontend.contrib.image.fields import ImageFormField
97

@@ -33,13 +31,14 @@ def get_short_description(self):
3331

3432

3533
@components.register
36-
class MyButton(ComponentLinkMixin, CMSFrontendComponent):
34+
class MyButton(CMSFrontendComponent):
3735
class Meta:
3836
name = "Button"
3937
render_template = "button.html"
4038
allow_children = False
4139

4240
text = forms.CharField(required=True, initial="Click me")
41+
link = LinkFormField()
4342

4443
def get_short_description(self):
4544
return self.text
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<a class="btn" href="{{ instance.get_link }}">{{ instance.text }}</a>
1+
{% load djangocms_link_tags %}<a class="btn" href="{{ instance.link|to_url }}">{{ instance.text }}</a>

0 commit comments

Comments
 (0)