Dexterity in 15 minutes or less <ul><li>My setup:
- Ubuntu Natty
- python 2.7 (with paster and zopeskel)
- All buildout essentials already installed </li></ul>
Resources <ul><li>http://plone.org/products/dexterity
http://plone.org/products/dexterity/documentation
http://plone.org/products/dexterity/documentation/how-to/install
http://plone.org/products/dexterity/documentation/manual/developer-manual/referencemanual-all-pages
http://plone.org/products/dexterity/documentation/manual/five.grok
http://plone.org/products/dexterity/documentation/manual/behaviors
http://plone.org/products/dexterity/documentation/manual/schema-driven-forms
Upcoming SlideShare
Loading in...5
×

Dexterity in 15 minutes or less

1,730

Published on

PloneSA monthly meeting dexterity content type introduction.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,730
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
11
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Dexterity in 15 minutes or less

  1. 1. Dexterity in 15 minutes or less <ul><li>My setup:
  2. 2. - Ubuntu Natty
  3. 3. - python 2.7 (with paster and zopeskel)
  4. 4. - All buildout essentials already installed </li></ul>
  5. 5. Resources <ul><li>http://plone.org/products/dexterity
  6. 6. http://plone.org/products/dexterity/documentation
  7. 7. http://plone.org/products/dexterity/documentation/how-to/install
  8. 8. http://plone.org/products/dexterity/documentation/manual/developer-manual/referencemanual-all-pages
  9. 9. http://plone.org/products/dexterity/documentation/manual/five.grok
  10. 10. http://plone.org/products/dexterity/documentation/manual/behaviors
  11. 11. http://plone.org/products/dexterity/documentation/manual/schema-driven-forms
  12. 12. http://maurits.vanrees.org/weblog/archive/2009/10/david-glick-building-content-types-with-dexterity/view?set_language=nl
  13. 13. http://pypi.python.org/pypi/zopeskel.dexterity
  14. 14. git@github.com:rijkstofberg/plonesa.dextut.git
  15. 15. https://github.com/jbeyers/example.geo.git </li></ul>
  16. 16. Philosophy <ul><li>Philosophy
  17. 17. - Reuse over reinvention
  18. 18. - Small over big
  19. 19. - Natural interaction over excessive generality
  20. 20. - Real code over generated code
  21. 21. - Zope 3 over Zope 2
  22. 22. - Zope concepts over new paradigms
  23. 23. - Automated testing over wishful thinking </li></ul>
  24. 24. Basics <ul><li>Version 1.0.1
  25. 25. released on Jul 02, 2011
  26. 26. Plone 4 & Plone 3
  27. 27. Builds on grok (Convention over configuration)
  28. 28. Makes use of ZCA + z3cforms
  29. 29. Schema, Views, Templates, FTI
  30. 30. Behaviours
  31. 31. concept:
  32. 32. Enabled per content type
  33. 33. Uses adapters
  34. 34. Adds functionality and fields to a type
  35. 35. Aspect oriented programming </li></ul>
  36. 36. Building... <ul><li>mkdir ~/instances/dexterity
  37. 37. cd ~/instances/dexterity
  38. 38. virtualenv --no-site-packages .
  39. 39. paster create -t plone4_buildout
  40. 40. gvim buildout.cfg and add:
  41. 41. [buildout]
  42. 42. extends =
  43. 43. http://good-py.appspot.com/release/dexterity/1.0?plone=4.0.7
  44. 44. [instance]
  45. 45. eggs =
  46. 46. Plone
  47. 47. PIL
  48. 48. plone.app.dexterity </li></ul>
  49. 49. Building <ul><li>Note: you can also enable the omelette bits in the buildout. I did.
  50. 50. ./bin/python bootstrap
  51. 51. ./bin/buildout -Dvt 240
  52. 52. ./bin/instance fg </li></ul>
  53. 53. TTW <ul><li>go to http://localhost:8080
  54. 54. create a site (we created 'minutes')
  55. 55. go to http://localhost:8080/minutes/plone_control_panel
  56. 56. click on 'Dexterity Content Types'
  57. 57. click on 'Add new content type'
  58. 58. we add a 'Store'
  59. 59. go the content type by clicking on its name
  60. 60. - there will be no fields yet
  61. 61. go to the 'Behaviours' tab
  62. 62. - 'Dublin Core metadata' is on this gives us:
  63. 63. Basic metadata + Categorization + Effective range + Ownership
  64. 64. - let's export this </li></ul>
  65. 65. Filesystem <ul><li>add the following to the pertinent buildout.cfg sections:
  66. 66. [buildout]
  67. 67. parts =
  68. 68. zopeskel
  69. 69. [zopeskel]
  70. 70. recipe = zc.recipe.egg
  71. 71. eggs =
  72. 72. ZopeSkel
  73. 73. Paste
  74. 74. PasteDeploy
  75. 75. PasteScript
  76. 76. zopeskel.dexterity
  77. 77. ${instance:eggs} </li></ul>
  78. 78. Filesystem ... <ul><li>rerun buildout
  79. 79. cd src
  80. 80. ../bin/zopeskel dexterity
  81. 81. plonesa.dextut
  82. 82. rm bootstrap*
  83. 83. rm -rf *.cfrm PasteScript-1.7.3-py2.7.egg/ Paste-1.7.5.1-py2.7.egg/ PasteDeploy-1.5.0-py2.7.egg/
  84. 84. update buildout.cfg
  85. 85. develop =
  86. 86. src/plonesa.dextut
  87. 87. eggs =
  88. 88. Plone
  89. 89. PIL
  90. 90. plone.app.dexterity
  91. 91. plonesa.dextut
  92. 92. ./bin/buildout -Dvt 240 </li></ul>
  93. 93. Add our dexterity product <ul><li>cd src
  94. 94. ../bin/zopeskel dexterity
  95. 95. Restart the server
  96. 96. Go to plone_control_panel and add the product
  97. 97. Named it: plonesa.dextut </li></ul>
  98. 98. Add our first content type <ul><li>cd plone.dextut
  99. 99. ../../bin/paster addcontent dexterity_content
  100. 100. Answer the questions
  101. 101. Restart the server
  102. 102. Go to the plone_control_panel
  103. 103. Deactivate + Activate
  104. 104. Add a new 'store' in the root of the plone site! </li></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×