|
View:
New views
11 Messages
—
Rating Filter:
Alert me
|
|
|
Gramps webapp in four stepsAlthough we haven't integrated Kathy's add and edit capabilities yet,
you can get a glimpse of what is coming of the gramps on-line, web application in four easy steps: 1) Install Django 1.1 - this is standard in many distros. Or go to http://www.djangoproject.com/download/ (Django 1.0 may work.. I don't know). 2) svn update trunk and ./autogen.sh - make sure you have up-to-date stuff 3) cd src/web and run "make run" 4) Point your web browser to http://127.0.0.1:8000/ That's it. But there is no data there. To get your data "on-line" just use the Django Exporter inside regular gramps gtk: Menu -> Export -> Django. You can then browse people and families "on line". Check out the search function. That's about it so far. Some notes: - this is alpha code... be careful with your good data. - if you export to django, it will first delete the data in the django database. - the admin id is "admin" and password is "gramps". You can see admin interface once you log in. - the non-logged in view can be much slower than the logged in view. This is because we are calling gramps probably_alive function. We're not sure if this is the speed of converting back and forth between django and bsddb, or if probably_alive is really slow... looking into this. - the default django-gramps data is currently stored in src/web/sqlite.db, but you can change src/web/settings.py to put it in mysql, postgresql, or other places. - the "make run" is a simple way to "python manage.py runserver" --- this is NOT a production webserver! But it is great for development. It automatically auto-reloads any of your files that change that it depends on. Just start it up, edit away, and the browser is always up to date. - to make a new admin: set PYTHONPATH to find gramps/src and "python manage.py createsuperuser" in src/web. If you have suggestions or ideas, please feel free to make notes here: http://www.gramps-project.org/wiki/index.php?title=GEPS_013:_GRAMPS_Webapp We know there is a lot to do, and would gladly welcome anyone wanting to join in! Let us know what you are interested in. -Doug ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Gramps-devel mailing list Gramps-devel@... https://lists.sourceforge.net/lists/listinfo/gramps-devel |
|
|
Re: Gramps webapp in four stepsI got that working just as you explained, it looks very good, lots of
gaps of course, but from the placeholder texts it looks like you know what's missing. Thanks for this great work Doug, Kathy and whoever else. Duncan ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Gramps-devel mailing list Gramps-devel@... https://lists.sourceforge.net/lists/listinfo/gramps-devel |
|
|
Re: Gramps webapp in four stepsDoug,
Thank you for this great work a promising start ! 1918 people 874 families 4028 events 505 notes 662 media 332 sources 235 places 13 repositories I suppose only two primary tables (person and family) are currently displayed with stylesheet. But it gives a good sample. > (Django 1.0 may work.. I don't know). I do not know if this was a Django 1.0 problem but I started to test GRAMPS Webapp with python-Django 1.0 provided by my distribution and I get : File "/var/lib/python-support/python2.6/django/contrib/contenttypes/models.py", line 1, in <module> from django.db import models File "/var/lib/python-support/python2.6/django/db/__init__.py", line 39, in <module> connection = backend.DatabaseWrapper(**settings.DATABASE_OPTIONS) TypeError: type object argument after ** must be a mapping, not str No problem with Django 1.1.1 :) > We know there is a lot to do, and would gladly welcome anyone wanting > to join in! Let us know what you are interested in. I should be able to test it (performance, translation) maybe some simples patchs (if need !) ... Jérôme Doug Blank a écrit : > Although we haven't integrated Kathy's add and edit capabilities yet, > you can get a glimpse of what is coming of the gramps on-line, web > application in four easy steps: > > 1) Install Django 1.1 - this is standard in many distros. Or go to > http://www.djangoproject.com/download/ (Django 1.0 may work.. I don't > know). > > 2) svn update trunk and ./autogen.sh - make sure you have up-to-date stuff > > 3) cd src/web and run "make run" > > 4) Point your web browser to http://127.0.0.1:8000/ > > That's it. But there is no data there. To get your data "on-line" just > use the Django Exporter inside regular gramps gtk: Menu -> Export -> > Django. You can then browse people and families "on line". Check out > the search function. That's about it so far. > > Some notes: > > - this is alpha code... be careful with your good data. > > - if you export to django, it will first delete the data in the django database. > > - the admin id is "admin" and password is "gramps". You can see admin > interface once you log in. > > - the non-logged in view can be much slower than the logged in view. > This is because we are calling gramps probably_alive function. We're > not sure if this is the speed of converting back and forth between > django and bsddb, or if probably_alive is really slow... looking into > this. > > - the default django-gramps data is currently stored in > src/web/sqlite.db, but you can change src/web/settings.py to put it in > mysql, postgresql, or other places. > > - the "make run" is a simple way to "python manage.py runserver" --- > this is NOT a production webserver! But it is great for development. > It automatically auto-reloads any of your files that change that it > depends on. Just start it up, edit away, and the browser is always up > to date. > > - to make a new admin: set PYTHONPATH to find gramps/src and "python > manage.py createsuperuser" in src/web. > > If you have suggestions or ideas, please feel free to make notes here: > > http://www.gramps-project.org/wiki/index.php?title=GEPS_013:_GRAMPS_Webapp > > We know there is a lot to do, and would gladly welcome anyone wanting > to join in! Let us know what you are interested in. > > -Doug > > ------------------------------------------------------------------------------ > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > trial. Simplify your report design, integration and deployment - and focus on > what you do best, core application coding. Discover what's new with > Crystal Reports now. http://p.sf.net/sfu/bobj-july > _______________________________________________ > Gramps-devel mailing list > Gramps-devel@... > https://lists.sourceforge.net/lists/listinfo/gramps-devel > ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Gramps-devel mailing list Gramps-devel@... https://lists.sourceforge.net/lists/listinfo/gramps-devel |
|
|
Re: Gramps webapp in four stepsEnvironment:
Request Method: GET Request URL: http://127.0.0.01:8000/person/a898fbc300e62f4458e/ Django Version: 1.1.1 Python Version: 2.6.2 Installed Applications: ['django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.admin', 'web.grampsdb'] Installed Middleware: ('django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware') Template error: In template /home/romjerome/trunk/src/data/templates/view_person_detail.html, error at line 72 Caught an exception while rendering: Note matching query does not exist. 62 : <li class="ui-corner-top ui-state-default"><a href="#tab-internet">Internet</a></li> 63 : <li class="ui-corner-top ui-state-default"><a href="#tab-association">Associations</a></li> 64 : <li class="ui-corner-top ui-state-default"><a href="#tab-lds">LDS</a></li> 65 : <li class="ui-corner-top ui-state-default"><a href="#tab-references">References</a></li> 66 : </ul> 67 : <div class="ui-tabs-panel ui-widget-content ui-corner-bottom" id="tab-events"> 68 : <!-- Events --> 69 : {{ person|person_event_table:user|safe }} 70 : </div> 71 : <div class="ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide" id="tab-names"> 72 : {{ person|person_name_table:user|safe }} 73 : </div> 74 : <div class="ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide" id="tab-sources"> 75 : {{ person|person_source_table:user|safe }} 76 : </div> 77 : <div class="ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide" id="tab-attributes"> 78 : {{ person|person_attribute_table:user|safe }} 79 : </div> 80 : <div class="ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide" id="tab-addresses"> 81 : {{ person|person_address_table:user|safe }} 82 : </div> Traceback: File "/usr/local/lib/python2.6/dist-packages/django/core/handlers/base.py" in get_response 92. response = callback(request, *callback_args, **callback_kwargs) File "/home/romjerome/trunk/src/web/grampsdb/views.py" in view_detail 103. return render_to_response(view_template, context) File "/usr/local/lib/python2.6/dist-packages/django/shortcuts/__init__.py" in render_to_response 20. return HttpResponse(loader.render_to_string(*args, **kwargs), **httpresponse_kwargs) File "/usr/local/lib/python2.6/dist-packages/django/template/loader.py" in render_to_string 108. return t.render(context_instance) File "/usr/local/lib/python2.6/dist-packages/django/template/__init__.py" in render 178. return self.nodelist.render(context) File "/usr/local/lib/python2.6/dist-packages/django/template/__init__.py" in render 779. bits.append(self.render_node(node, context)) File "/usr/local/lib/python2.6/dist-packages/django/template/debug.py" in render_node 71. result = node.render(context) File "/usr/local/lib/python2.6/dist-packages/django/template/loader_tags.py" in render 97. return compiled_parent.render(context) File "/usr/local/lib/python2.6/dist-packages/django/template/__init__.py" in render 178. return self.nodelist.render(context) File "/usr/local/lib/python2.6/dist-packages/django/template/__init__.py" in render 779. bits.append(self.render_node(node, context)) File "/usr/local/lib/python2.6/dist-packages/django/template/debug.py" in render_node 71. result = node.render(context) File "/usr/local/lib/python2.6/dist-packages/django/template/loader_tags.py" in render 97. return compiled_parent.render(context) File "/usr/local/lib/python2.6/dist-packages/django/template/__init__.py" in render 178. return self.nodelist.render(context) File "/usr/local/lib/python2.6/dist-packages/django/template/__init__.py" in render 779. bits.append(self.render_node(node, context)) File "/usr/local/lib/python2.6/dist-packages/django/template/debug.py" in render_node 71. result = node.render(context) File "/usr/local/lib/python2.6/dist-packages/django/template/loader_tags.py" in render 24. result = self.nodelist.render(context) File "/usr/local/lib/python2.6/dist-packages/django/template/__init__.py" in render 779. bits.append(self.render_node(node, context)) File "/usr/local/lib/python2.6/dist-packages/django/template/debug.py" in render_node 81. raise wrapped Exception Type: TemplateSyntaxError at /person/a898fbc300e62f4458e/ Exception Value: Caught an exception while rendering: Note matching query does not exist. I cannot provide a patch yet... but I confirm that to remove line 72 on trunk/src/data/templates/view_person_detail.html will display person_detail. I suppose we need to write a query for note and I know that webapp is currently far away to be stable or finished (unstable status). It was the first time I get Django debug page after testing during a week ! It was funny, for some secondes I thought I was walking throught Gramps program (with Gtk) ! :) First impression, is that GeneWeb users might try this webapp ... I have a Geneanet account and an online family tree (powered by GeneWeb). It is a great help for finding alive relatives. But admin or edit into GeneWeb are not "so easy". This webapp might be a good alternative. Jérôme Jérôme a écrit : > Doug, > > > Thank you for this great work a promising start ! > > 1918 people > 874 families > 4028 events > 505 notes > 662 media > 332 sources > 235 places > 13 repositories > > I suppose only two primary tables (person and family) are currently > displayed with stylesheet. But it gives a good sample. > >> (Django 1.0 may work.. I don't know). > > I do not know if this was a Django 1.0 problem but I started to test > GRAMPS Webapp with python-Django 1.0 provided by my distribution and I > get : > > File > "/var/lib/python-support/python2.6/django/contrib/contenttypes/models.py", > line 1, in <module> > from django.db import models > File "/var/lib/python-support/python2.6/django/db/__init__.py", line > 39, in <module> > connection = backend.DatabaseWrapper(**settings.DATABASE_OPTIONS) > TypeError: type object argument after ** must be a mapping, not str > > No problem with Django 1.1.1 :) > >> We know there is a lot to do, and would gladly welcome anyone wanting >> to join in! Let us know what you are interested in. > > I should be able to test it (performance, translation) maybe some > simples patchs (if need !) ... > > > Jérôme > > > Doug Blank a écrit : >> Although we haven't integrated Kathy's add and edit capabilities yet, >> you can get a glimpse of what is coming of the gramps on-line, web >> application in four easy steps: >> >> 1) Install Django 1.1 - this is standard in many distros. Or go to >> http://www.djangoproject.com/download/ (Django 1.0 may work.. I don't >> know). >> >> 2) svn update trunk and ./autogen.sh - make sure you have up-to-date >> stuff >> >> 3) cd src/web and run "make run" >> >> 4) Point your web browser to http://127.0.0.1:8000/ >> >> That's it. But there is no data there. To get your data "on-line" just >> use the Django Exporter inside regular gramps gtk: Menu -> Export -> >> Django. You can then browse people and families "on line". Check out >> the search function. That's about it so far. >> >> Some notes: >> >> - this is alpha code... be careful with your good data. >> >> - if you export to django, it will first delete the data in the django >> database. >> >> - the admin id is "admin" and password is "gramps". You can see admin >> interface once you log in. >> >> - the non-logged in view can be much slower than the logged in view. >> This is because we are calling gramps probably_alive function. We're >> not sure if this is the speed of converting back and forth between >> django and bsddb, or if probably_alive is really slow... looking into >> this. >> >> - the default django-gramps data is currently stored in >> src/web/sqlite.db, but you can change src/web/settings.py to put it in >> mysql, postgresql, or other places. >> >> - the "make run" is a simple way to "python manage.py runserver" --- >> this is NOT a production webserver! But it is great for development. >> It automatically auto-reloads any of your files that change that it >> depends on. Just start it up, edit away, and the browser is always up >> to date. >> >> - to make a new admin: set PYTHONPATH to find gramps/src and "python >> manage.py createsuperuser" in src/web. >> >> If you have suggestions or ideas, please feel free to make notes here: >> >> http://www.gramps-project.org/wiki/index.php?title=GEPS_013:_GRAMPS_Webapp >> >> >> We know there is a lot to do, and would gladly welcome anyone wanting >> to join in! Let us know what you are interested in. >> >> -Doug >> >> ------------------------------------------------------------------------------ >> >> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 >> 30-Day trial. Simplify your report design, integration and deployment >> - and focus on what you do best, core application coding. Discover >> what's new with >> Crystal Reports now. http://p.sf.net/sfu/bobj-july >> _______________________________________________ >> Gramps-devel mailing list >> Gramps-devel@... >> https://lists.sourceforge.net/lists/listinfo/gramps-devel >> > > ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Gramps-devel mailing list Gramps-devel@... https://lists.sourceforge.net/lists/listinfo/gramps-devel |
|
|
Re: Gramps webapp in four stepsJérôme,
Thanks for the testing and feedback! The bug you discovered: > 71 : <div class="ui-tabs-panel ui-widget-content ui-corner-bottom > ui-tabs-hide" id="tab-names"> > 72 : {{ person|person_name_table:user|safe }} > 73 : </div> is probably not enough error checking (perhaps not checking to see if something is not None first). If you'd like to explore this bug, let me use this opportunity to show you how you'd go about tracking it down. First, let me explain this line: {{ person|person_name_table:user|safe }}. This says "pass the person object through a filter called 'person_name_table' with a second parameter of 'user', and then pass that through the 'safe' filter (which makes it possible for filters to generate HTML). These custom filters are registered in src/web/grampsdb/templatetags/my_tags.py. The actual code resides in src/web/utils.py and looks like: def person_name_table(person, user): ... In this case, person is a Django Person model instance, and user is the User model (so we can check their permissions). Models are defined in web/grampsdb/models.py. So, if you wanted to track this, you can use print statements, or even pdb in the src/web/utils.py person_name_table code. > It was the first time I get Django debug page after testing during a week ! > It was funny, for some secondes I thought I was walking throught Gramps > program (with Gtk) ! :) I'm glad you find this to be true! We decided to replicate the gramps gtk UI for a couple of reasons. One is that it is already thought-out, and second it makes it so that we don't have two different ways of doing things (and just one manual). A related point is that we haven't spent any time on look and feel yet... we are just using existing CSS. If someone knew CSS, it would be great to have a theme that matched GTK and our CSS id/categories. > First impression, is that GeneWeb users might try this webapp ... > I have a Geneanet account and an online family tree (powered by GeneWeb). It > is a great help for finding alive relatives. > But admin or edit into GeneWeb are not "so easy". > This webapp might be a good alternative. We hope it is a good alternative for many kinds of users :) We have translation on our list to do, so if you wanted to look into how Django handles it, that would be quite useful. Thanks again, -Doug > > Jérôme ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Gramps-devel mailing list Gramps-devel@... https://lists.sourceforge.net/lists/listinfo/gramps-devel |
|
|
Re: Gramps webapp in four stepsGramps webapp status update:
1) We collected votes from users and developers (and passerbys), and considered all of the name suggestions. We finally decided on "Gramps Connect" as being the best. (We still have to correct the capitalized GRAMPS throughout the code). It isn't the most flashy name, but it was the best considering all of the constraints (short, meaningful, non-confusing with other parts of gramps, etc). 2) For demonstration purposes, we have the DNS http://gramps-connect.org and it is up and running. It is running trunk, with some custom changes to work around http://www.gramps-project.org/bugs/view.php?id=3365. (I'm working on patches for the issue---more on that later.) Same login/password as before (admin/gramps). 3) If anyone would like to begin to learn Django by, say, claiming a page view (like Repositories) or a Tab under a page (like Media -> Sources, please do! This could involve just HTML editing (see src/data/templates/view_person_detail.html for example). 4) We still have many big design decisions to make. For example, how will we handle private data? Gramps core has a proxy that automatically sanitizes the data so developers don't have to think about it. Can we do something similar in Django? If you would like to work on part of this, just claim it on the GEP page: http://www.gramps-project.org/wiki/index.php?title=GEPS_013:_GRAMPS_Webapp#Roadmap 5) We can now run some Gramps reports from the web using src/web/djangodb.py. This code is the bare necessities to be able to provide the interface to get data for reports. We still need an interface to run the reports (will the browser be busy while the reports run? Or will it run in background, and appear in a list of reports available for download for the user?) 6) Need more brainstorming! There were many good ideas on the gramps-users list. But some things we can do easily. For example, now you can run a web browser inside Gramps, and could bring up a gramps-connect site. It would be handy (and fairly easy) to have a "Download Person" link to add to local gramps gtk. Or to have an RSS feed of changes on the website. Wouldn't be cool to sync local and website by clicking a button? We can take this opportunity to really think outside the box and bring genealogy into the 21st century. For example, Kathy is very interested in incorporating "social networking" ideas into genealogy... to better keep the living members of the tree informed, and collaborate. -Doug On Tue, Nov 10, 2009 at 9:54 AM, Doug Blank <doug.blank@...> wrote: > Although we haven't integrated Kathy's add and edit capabilities yet, > you can get a glimpse of what is coming of the gramps on-line, web > application in four easy steps: > > 1) Install Django 1.1 - this is standard in many distros. Or go to > http://www.djangoproject.com/download/ (Django 1.0 may work.. I don't > know). > > 2) svn update trunk and ./autogen.sh - make sure you have up-to-date stuff > > 3) cd src/web and run "make run" > > 4) Point your web browser to http://127.0.0.1:8000/ > > That's it. But there is no data there. To get your data "on-line" just > use the Django Exporter inside regular gramps gtk: Menu -> Export -> > Django. You can then browse people and families "on line". Check out > the search function. That's about it so far. > > Some notes: > > - this is alpha code... be careful with your good data. > > - if you export to django, it will first delete the data in the django database. > > - the admin id is "admin" and password is "gramps". You can see admin > interface once you log in. > > - the non-logged in view can be much slower than the logged in view. > This is because we are calling gramps probably_alive function. We're > not sure if this is the speed of converting back and forth between > django and bsddb, or if probably_alive is really slow... looking into > this. > > - the default django-gramps data is currently stored in > src/web/sqlite.db, but you can change src/web/settings.py to put it in > mysql, postgresql, or other places. > > - the "make run" is a simple way to "python manage.py runserver" --- > this is NOT a production webserver! But it is great for development. > It automatically auto-reloads any of your files that change that it > depends on. Just start it up, edit away, and the browser is always up > to date. > > - to make a new admin: set PYTHONPATH to find gramps/src and "python > manage.py createsuperuser" in src/web. > > If you have suggestions or ideas, please feel free to make notes here: > > http://www.gramps-project.org/wiki/index.php?title=GEPS_013:_GRAMPS_Webapp > > We know there is a lot to do, and would gladly welcome anyone wanting > to join in! Let us know what you are interested in. > > -Doug > ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Gramps-devel mailing list Gramps-devel@... https://lists.sourceforge.net/lists/listinfo/gramps-devel |
|
|
Re: Gramps webapp in four steps2009/11/17 Doug Blank <doug.blank@...> Gramps webapp status update: I created a category gramps-connect for bugs/tickets in feature requests and trunk 2) For demonstration purposes, we have the DNS 3) If anyone would like to begin to learn Django by, say, claiming a All very interesting. If only I could clone myself :-) As with all products, you will have to work to a 0.1 release, of which you now decide what should be in it, and then work towards that. It is the best way to obtain new developers. It would be nice to release 3.2 in the beginning of 2010, and at the same time announce a 0.1 release of gramps-connect that can be used to 'browse' your data completely. For that, you would need to make sure the more experimental pieces can be switched off with a simple switch in the config. Also look now into the problem of internationalization of django websites. GRAMPS is very international, with commercial genea apps most prolific in the anglosaxon world, so you need to cater to that public from the beginning. Benny -Doug ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Gramps-devel mailing list Gramps-devel@... https://lists.sourceforge.net/lists/listinfo/gramps-devel |
|
|
Re: Gramps webapp in four stepsOn Tue, Nov 17, 2009 at 7:51 AM, Benny Malengier
<benny.malengier@...> wrote: > > > 2009/11/17 Doug Blank <doug.blank@...> >> >> Gramps webapp status update: >> >> 1) We collected votes from users and developers (and passerbys), and >> considered all of the name suggestions. We finally decided on "Gramps >> Connect" as being the best. (We still have to correct the capitalized >> GRAMPS throughout the code). It isn't the most flashy name, but it was >> the best considering all of the constraints (short, meaningful, >> non-confusing with other parts of gramps, etc). >> > > I created a category gramps-connect for bugs/tickets in feature requests and > trunk Thanks! If people used that to list feature requests, bug issues, etc. that would be great. If someone wanted to go through the user and dev mailing list and enter ideas there, that would be quite useful. >> >> 2) For demonstration purposes, we have the DNS >> http://gramps-connect.org and it is up and running. It is running >> trunk, with some custom changes to work around >> http://www.gramps-project.org/bugs/view.php?id=3365. (I'm working on >> patches for the issue---more on that later.) Same login/password as >> before (admin/gramps). >> >> >> 3) If anyone would like to begin to learn Django by, say, claiming a >> page view (like Repositories) or a Tab under a page (like Media -> >> Sources, please do! This could involve just HTML editing (see >> src/data/templates/view_person_detail.html for example). >> >> 4) We still have many big design decisions to make. For example, how >> will we handle private data? Gramps core has a proxy that >> automatically sanitizes the data so developers don't have to think >> about it. Can we do something similar in Django? If you would like to >> work on part of this, just claim it on the GEP page: >> >> >> http://www.gramps-project.org/wiki/index.php?title=GEPS_013:_GRAMPS_Webapp#Roadmap >> >> 5) We can now run some Gramps reports from the web using >> src/web/djangodb.py. This code is the bare necessities to be able to >> provide the interface to get data for reports. We still need an >> interface to run the reports (will the browser be busy while the >> reports run? Or will it run in background, and appear in a list of >> reports available for download for the user?) >> >> 6) Need more brainstorming! There were many good ideas on the >> gramps-users list. But some things we can do easily. For example, now >> you can run a web browser inside Gramps, and could bring up a >> gramps-connect site. It would be handy (and fairly easy) to have a >> "Download Person" link to add to local gramps gtk. Or to have an RSS >> feed of changes on the website. Wouldn't be cool to sync local and >> website by clicking a button? >> >> We can take this opportunity to really think outside the box and bring >> genealogy into the 21st century. For example, Kathy is very interested >> in incorporating "social networking" ideas into genealogy... to better >> keep the living members of the tree informed, and collaborate. >> > > All very interesting. If only I could clone myself :-) Me too! > As with all products, you will have to work to a 0.1 release, of which you > now decide what should be in it, and then work towards that. It is the best > way to obtain new developers. Yes, great idea. We weren't sure how much we could do by 3.2, but I think it is more clear now. > It would be nice to release 3.2 in the beginning of 2010, and at the same > time announce a 0.1 release of gramps-connect that can be used to 'browse' > your data completely. For that, you would need to make sure the more > experimental pieces can be switched off with a simple switch in the config. That is an excellent goal: browse all of the data (in two modes: logged in (all data) and non-logged in (protect private data)). > Also look now into the problem of internationalization of django websites. > GRAMPS is very international, with commercial genea apps most prolific in > the anglosaxon world, so you need to cater to that public from the > beginning. Yes, that is one that I hope someone will volunteer to take charge of, and we should aim to have it part of 0.1. I think our path to March 2010 is fairly well defined now. Thanks again! -Doug > Benny > >> >> -Doug >> >> On Tue, Nov 10, 2009 at 9:54 AM, Doug Blank <doug.blank@...> wrote: >> > Although we haven't integrated Kathy's add and edit capabilities yet, >> > you can get a glimpse of what is coming of the gramps on-line, web >> > application in four easy steps: >> > >> > 1) Install Django 1.1 - this is standard in many distros. Or go to >> > http://www.djangoproject.com/download/ (Django 1.0 may work.. I don't >> > know). >> > >> > 2) svn update trunk and ./autogen.sh - make sure you have up-to-date >> > stuff >> > >> > 3) cd src/web and run "make run" >> > >> > 4) Point your web browser to http://127.0.0.1:8000/ >> > >> > That's it. But there is no data there. To get your data "on-line" just >> > use the Django Exporter inside regular gramps gtk: Menu -> Export -> >> > Django. You can then browse people and families "on line". Check out >> > the search function. That's about it so far. >> > >> > Some notes: >> > >> > - this is alpha code... be careful with your good data. >> > >> > - if you export to django, it will first delete the data in the django >> > database. >> > >> > - the admin id is "admin" and password is "gramps". You can see admin >> > interface once you log in. >> > >> > - the non-logged in view can be much slower than the logged in view. >> > This is because we are calling gramps probably_alive function. We're >> > not sure if this is the speed of converting back and forth between >> > django and bsddb, or if probably_alive is really slow... looking into >> > this. >> > >> > - the default django-gramps data is currently stored in >> > src/web/sqlite.db, but you can change src/web/settings.py to put it in >> > mysql, postgresql, or other places. >> > >> > - the "make run" is a simple way to "python manage.py runserver" --- >> > this is NOT a production webserver! But it is great for development. >> > It automatically auto-reloads any of your files that change that it >> > depends on. Just start it up, edit away, and the browser is always up >> > to date. >> > >> > - to make a new admin: set PYTHONPATH to find gramps/src and "python >> > manage.py createsuperuser" in src/web. >> > >> > If you have suggestions or ideas, please feel free to make notes here: >> > >> > >> > http://www.gramps-project.org/wiki/index.php?title=GEPS_013:_GRAMPS_Webapp >> > >> > We know there is a lot to do, and would gladly welcome anyone wanting >> > to join in! Let us know what you are interested in. >> > >> > -Doug >> > >> >> >> ------------------------------------------------------------------------------ >> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 >> 30-Day >> trial. Simplify your report design, integration and deployment - and focus >> on >> what you do best, core application coding. Discover what's new with >> Crystal Reports now. http://p.sf.net/sfu/bobj-july >> _______________________________________________ >> Gramps-devel mailing list >> Gramps-devel@... >> https://lists.sourceforge.net/lists/listinfo/gramps-devel > > ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Gramps-devel mailing list Gramps-devel@... https://lists.sourceforge.net/lists/listinfo/gramps-devel |
|
|
|
|
|
Re: Gramps webapp in four stepsDoug,
> We have translation on our list to do, so if you wanted to > look into how Django handles it, that would be quite useful. Thanks again, I have looked at Django documentation. As most strings are already translated (program, reports), I suppose we do not need (yet) to retrieve translation strings for a having localized version ! Maybe a change on template code : http://docs.djangoproject.com/en/dev/topics/i18n/#in-template-code I will try this. Jérôme --- En date de : Mar 17.11.09, Doug Blank <doug.blank@...> a écrit : > De: Doug Blank <doug.blank@...> > Objet: Re: [Gramps-devel] Gramps webapp in four steps > À: romjerome@... > Cc: "Gramps Development List" <gramps-devel@...> > Date: Mardi 17 Novembre 2009, 12h35 > Jérôme, > > Thanks for the testing and feedback! The bug you > discovered: > > > 71 : <div class="ui-tabs-panel > ui-widget-content ui-corner-bottom > > ui-tabs-hide" id="tab-names"> > > 72 : {{ person|person_name_table:user|safe > }} > > 73 : </div> > > is probably not enough error checking (perhaps not checking > to see if > something is not None first). If you'd like to explore this > bug, let > me use this opportunity to show you how you'd go about > tracking it > down. > > First, let me explain this line: {{ > person|person_name_table:user|safe > }}. This says "pass the person object through a filter > called > 'person_name_table' with a second parameter of 'user', and > then pass > that through the 'safe' filter (which makes it possible for > filters to > generate HTML). These custom filters are registered in > src/web/grampsdb/templatetags/my_tags.py. The actual code > resides in > src/web/utils.py and looks like: > > def person_name_table(person, user): > ... > > In this case, person is a Django Person model instance, and > user is > the User model (so we can check their permissions). Models > are defined > in web/grampsdb/models.py. > > So, if you wanted to track this, you can use print > statements, or even > pdb in the src/web/utils.py person_name_table code. > > > It was the first time I get Django debug page after > testing during a week ! > > It was funny, for some secondes I thought I was > walking throught Gramps > > program (with Gtk) ! :) > > I'm glad you find this to be true! We decided to replicate > the gramps > gtk UI for a couple of reasons. One is that it is already > thought-out, > and second it makes it so that we don't have two different > ways of > doing things (and just one manual). A related point is that > we haven't > spent any time on look and feel yet... we are just using > existing CSS. > If someone knew CSS, it would be great to have a theme that > matched > GTK and our CSS id/categories. > > > First impression, is that GeneWeb users might try this > webapp ... > > I have a Geneanet account and an online family tree > (powered by GeneWeb). It > > is a great help for finding alive relatives. > > But admin or edit into GeneWeb are not "so easy". > > This webapp might be a good alternative. > > We hope it is a good alternative for many kinds of users > :) > > We have translation on our list to do, so if you wanted to > look into > how Django handles it, that would be quite useful. Thanks > again, > > -Doug > > > > > Jérôme > ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Gramps-devel mailing list Gramps-devel@... https://lists.sourceforge.net/lists/listinfo/gramps-devel |
|
|
Re: Gramps webapp in four stepsOn Thu, Nov 19, 2009 at 5:58 AM, jerome <romjerome@...> wrote:
> Doug, > >> We have translation on our list to do, so if you wanted to >> look into how Django handles it, that would be quite useful. Thanks again, > > I have looked at Django documentation. > As most strings are already translated (program, reports), I suppose we do not need (yet) to retrieve translation strings for a having localized version ! > Maybe a change on template code : > http://docs.djangoproject.com/en/dev/topics/i18n/#in-template-code > I will try this. Great! It looks like the rest of that page has details on getting the messages, compiling, and using. We'll need to do all of that, and have some way in the interface for choosing which language, and then finally storing that with the logged-in user's preferences. -Doug > > > Jérôme > > --- En date de : Mar 17.11.09, Doug Blank <doug.blank@...> a écrit : > >> De: Doug Blank <doug.blank@...> >> Objet: Re: [Gramps-devel] Gramps webapp in four steps >> À: romjerome@... >> Cc: "Gramps Development List" <gramps-devel@...> >> Date: Mardi 17 Novembre 2009, 12h35 >> Jérôme, >> >> Thanks for the testing and feedback! The bug you >> discovered: >> >> > 71 : <div class="ui-tabs-panel >> ui-widget-content ui-corner-bottom >> > ui-tabs-hide" id="tab-names"> >> > 72 : {{ person|person_name_table:user|safe >> }} >> > 73 : </div> >> >> is probably not enough error checking (perhaps not checking >> to see if >> something is not None first). If you'd like to explore this >> bug, let >> me use this opportunity to show you how you'd go about >> tracking it >> down. >> >> First, let me explain this line: {{ >> person|person_name_table:user|safe >> }}. This says "pass the person object through a filter >> called >> 'person_name_table' with a second parameter of 'user', and >> then pass >> that through the 'safe' filter (which makes it possible for >> filters to >> generate HTML). These custom filters are registered in >> src/web/grampsdb/templatetags/my_tags.py. The actual code >> resides in >> src/web/utils.py and looks like: >> >> def person_name_table(person, user): >> ... >> >> In this case, person is a Django Person model instance, and >> user is >> the User model (so we can check their permissions). Models >> are defined >> in web/grampsdb/models.py. >> >> So, if you wanted to track this, you can use print >> statements, or even >> pdb in the src/web/utils.py person_name_table code. >> >> > It was the first time I get Django debug page after >> testing during a week ! >> > It was funny, for some secondes I thought I was >> walking throught Gramps >> > program (with Gtk) ! :) >> >> I'm glad you find this to be true! We decided to replicate >> the gramps >> gtk UI for a couple of reasons. One is that it is already >> thought-out, >> and second it makes it so that we don't have two different >> ways of >> doing things (and just one manual). A related point is that >> we haven't >> spent any time on look and feel yet... we are just using >> existing CSS. >> If someone knew CSS, it would be great to have a theme that >> matched >> GTK and our CSS id/categories. >> >> > First impression, is that GeneWeb users might try this >> webapp ... >> > I have a Geneanet account and an online family tree >> (powered by GeneWeb). It >> > is a great help for finding alive relatives. >> > But admin or edit into GeneWeb are not "so easy". >> > This webapp might be a good alternative. >> >> We hope it is a good alternative for many kinds of users >> :) >> >> We have translation on our list to do, so if you wanted to >> look into >> how Django handles it, that would be quite useful. Thanks >> again, >> >> -Doug >> >> > >> > Jérôme >> > > > > ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Gramps-devel mailing list Gramps-devel@... https://lists.sourceforge.net/lists/listinfo/gramps-devel |
| Free embeddable forum powered by Nabble | Forum Help |