Skip to content

Commit afe31ac

Browse files
committed
update docs
1 parent b508589 commit afe31ac

22 files changed

+223
-177
lines changed

CHANGELOG.md

+3-1
Original file line numberDiff line numberDiff line change
@@ -39,14 +39,16 @@ Using the following categories, list your changes in this order:
3939
- ReactPy components can now use SEO compatible rendering!
4040
- `settings.py:REACTPY_PRERENDER` can be set to `True` to enable this behavior by default
4141
- Or, you can enable it on individual components via the template tag: `{% component "..." prerender="True" %}`
42+
- `reactpy_django.components.view_to_iframe` component has been added, which uses an `<iframe>` to render a Django view.
4243

4344
### Changed
4445

4546
- Renamed undocumented utility function `reactpy_django.utils.ComponentPreloader` to `reactpy_django.utils.RootComponentFinder`.
4647

4748
### Deprecated
4849

49-
- The `compatibility` argument on `reactpy_django.components.view_to_component` is deprecated. Use `view_to_iframe_component` instead.
50+
- The `compatibility` argument on `reactpy_django.components.view_to_component` is deprecated. Use `reactpy_django.components.view_to_iframe` instead.
51+
- Using `reactpy_django.components.view_to_component` as a `#!python @decorator` is deprecated. Check the docs on the new suggested usage.
5052

5153
## [3.5.1] - 2023-09-07
5254

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
from django.http import HttpResponse
2+
3+
4+
def hello_world(request, arg1, arg2, key1=None, key2=None):
5+
return HttpResponse(f"Hello World! {arg1} {arg2} {key1} {key2}")

docs/python/hello_world_cbv.py

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
from django.http import HttpResponse
2+
from django.views import View
3+
4+
5+
class HelloWorld(View):
6+
def get(self, request):
7+
return HttpResponse("Hello World!")

docs/python/hello_world_fbv.py

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
from django.http import HttpResponse
2+
3+
4+
def hello_world(request):
5+
return HttpResponse("Hello World!")
+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
from django.http import HttpResponse
2+
3+
4+
def hello_world(request):
5+
return HttpResponse('<div id="hello-world"> Hello World! </div>')

docs/python/views.py

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
from .hello_world_cbv import HelloWorld
2+
from .hello_world_fbv import hello_world
3+
4+
__all__ = [
5+
"HelloWorld",
6+
"hello_world",
7+
]

docs/python/vtc-args-kwargs.py

-21
This file was deleted.

docs/python/vtc-args.py

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
from django.http import HttpRequest
2+
from reactpy import component, html
3+
from reactpy_django.components import view_to_component
4+
5+
from . import views
6+
7+
hello_world_component = view_to_component(views.hello_world)
8+
9+
10+
@component
11+
def my_component():
12+
request = HttpRequest()
13+
request.method = "GET"
14+
15+
return html.div(
16+
hello_world_component(
17+
request, # This request object is optional.
18+
"value_1",
19+
"value_2",
20+
key1="abc",
21+
key2="123",
22+
),
23+
)

docs/python/vtc-cbv-compatibility.py

-10
This file was deleted.

docs/python/vtc-cbv.py

+3-9
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,13 @@
1-
from django.http import HttpResponse
2-
from django.views import View
31
from reactpy import component, html
42
from reactpy_django.components import view_to_component
53

4+
from . import views
65

7-
class HelloWorldView(View):
8-
def get(self, request):
9-
return HttpResponse("Hello World!")
10-
11-
12-
vtc = view_to_component(HelloWorldView)
6+
hello_world_component = view_to_component(views.HelloWorld)
137

148

159
@component
1610
def my_component():
1711
return html.div(
18-
vtc(),
12+
hello_world_component(),
1913
)

docs/python/vtc-compatibility.py

-15
This file was deleted.

docs/python/vtc-fbv-compat.py

-8
This file was deleted.

docs/python/vtc-func.py

-12
This file was deleted.

docs/python/vtc-request.py

-20
This file was deleted.

docs/python/vtc-strict-parsing.py

+3-5
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,13 @@
1-
from django.http import HttpResponse
21
from reactpy import component, html
32
from reactpy_django.components import view_to_component
43

4+
from . import views
55

6-
@view_to_component(strict_parsing=False)
7-
def hello_world_view(request):
8-
return HttpResponse("<my-tag> Hello World </my-tag>")
6+
hello_world_component = view_to_component(views.hello_world)
97

108

119
@component
1210
def my_component():
1311
return html.div(
14-
hello_world_view(),
12+
hello_world_component(),
1513
)

docs/python/vtc-transforms.py

+7-6
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,22 @@
1-
from django.http import HttpResponse
21
from reactpy import component, html
32
from reactpy_django.components import view_to_component
43

4+
from . import views
5+
56

67
def example_transform(vdom):
78
attributes = vdom.get("attributes")
89
if attributes and attributes.get("id") == "hello-world":
9-
vdom["children"][0] = "Good Bye World!"
10+
vdom["children"][0] = "Farewell World!"
1011

1112

12-
@view_to_component(transforms=[example_transform])
13-
def hello_world_view(request):
14-
return HttpResponse("<div id='hello-world'> Hello World! <div>")
13+
hello_world_component = view_to_component(
14+
views.hello_world, transforms=[example_transform]
15+
)
1516

1617

1718
@component
1819
def my_component():
1920
return html.div(
20-
hello_world_view(),
21+
hello_world_component(),
2122
)

docs/python/vtc.py

+3-5
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,13 @@
1-
from django.http import HttpResponse
21
from reactpy import component, html
32
from reactpy_django.components import view_to_component
43

4+
from . import views
55

6-
@view_to_component
7-
def hello_world_view(request):
8-
return HttpResponse("Hello World!")
6+
hello_world_component = view_to_component(views.hello_world)
97

108

119
@component
1210
def my_component():
1311
return html.div(
14-
hello_world_view(),
12+
hello_world_component(),
1513
)

docs/python/vti-args.py

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
from reactpy import component, html
2+
from reactpy_django.components import view_to_iframe
3+
4+
from . import views
5+
6+
7+
@component
8+
def my_component():
9+
return html.div(
10+
view_to_iframe(
11+
views.hello_world,
12+
"value_1",
13+
"value_2",
14+
key1="abc",
15+
key2="123",
16+
),
17+
)

docs/python/vti-cbv.py

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
from reactpy import component, html
2+
from reactpy_django.components import view_to_iframe
3+
4+
from . import views
5+
6+
7+
@component
8+
def my_component():
9+
return html.div(
10+
view_to_iframe(views.HelloWorld),
11+
)

docs/python/vti-extra-props.py

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
from reactpy import component, html
2+
from reactpy_django.components import view_to_iframe
3+
4+
from . import views
5+
6+
7+
@component
8+
def my_component():
9+
return html.div(
10+
view_to_iframe(views.hello_world, extra_props={"title": "Hello World!"}),
11+
)

docs/python/vti.py

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
from reactpy import component, html
2+
from reactpy_django.components import view_to_iframe
3+
4+
from . import views
5+
6+
7+
@component
8+
def my_component():
9+
return html.div(
10+
view_to_iframe(views.hello_world),
11+
)

0 commit comments

Comments
 (0)