A summary of discussion on the TurboGears mailing list from
12/04/06 to
12/13/06 follows. Please direct any comments or suggestions
to me
privately. The content and criteria used to generate this
list are
still highly open to suggestions.
Announcements
=============
TurboGears book available in PDF format
---------------------------------------
Kevin announced that the TurboGears book is available in PDF
format. It
can be found here:
http://www.phptr.com/bookstore/product.asp?is
bn=0132341603&rl=1
- `Rapid Web Applications with TurboGears available in PDF
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/16da4a7424dfab3b>`_
TurboMail has a new home, and a new release!
--------------------------------------------
Matthew Bevan announced that TurboMail has a new release and
a new
home. The project is now being run through a Trac instance
and now has
more documentation. The new home for TurboMail is:
http://trac.ori
anagroup.com/turbomail
Here is the list of changes in the new release:
* Corrected the MIME encoding of complex messages.
* Allow an alternate envelope address via the `smtpfrom`
property.
* Attach and embed methods both allow you to pass an
existing File
descendant rather than require an on-disk path.
- `TurboMail has a new home, and a new release!
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/c068b4a296f36e89>`_
TurboGears stuff on sale
------------------------
Kevin has put all of the TurboGears merchandise on sale. You
can find
(and buy) it here: http://www.tu
rbogears.org/ultimate.html
- `TurboGears stuff on sale
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/d253995c1dead596>`_
CherryPy Shop
-------------
CherryPy now has a cafepress site where you can buy
CherryPy-themed
merchandise. You can find it here: http://www.cafepres
s.com/cherrypy
- `CherryPy Shop
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/562f6da289b2efcd>`_
Tasty 1.1 released
------------------
Anders Pearson announced a 1.1 release of the Tasty
REST-based tagging
engine. This update is now compatible with TG 1.0b. It can
be found
here: http://microa
pps.sourceforge.net/tasty/
Some discussion of microapps and a more convenient way to
use them
within TurboGears followed.
- `Tasty 1.1
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/0193ce1b2da66075>`_
Summaries
=========
Options for controlling the CherryPy process
--------------------------------------------
Christopher Arndt wanted the community to know about his
experiences
using ``supervisord`` to control the CherryPy process. His
notes can be
found here: http://padd
yland.serveblog.net/article/12
Anders Pearson also mentioned that he had notes on using
supervisord as
well as using workingenv.py to isolate application
environments. Those
notes can be found here:
http:/
/thraxil.org/users/anders/posts/2006/09/13/TurboGears-Deploy
ment-with-supervisord-and-workingenv-py/
Contributing Thread:
- `Options for controlling the CherryPy process
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/953e7acba2e21d2b>`_
Setting the password encryption algorithm in Identity w/
SQLAlchemy
------------------------------------------------------------
-------
Jose Soares asked about and found the answer for changing
the
encryption algorithm used in Identity under the SQLAlchemy
provider.
Good job Jose, those are the kinds of questions we love
answering!
- `identity.saprovider.encryption_algorithm
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/d63db9a6a2ed66b8>`_
Best Practice for picture layout (displaying a data set in a
fixed
width/height grid)
------------------------------------------------------------
-------------------------
David Xiao asked about creating a table with a programmable
number of
rows and columns to be used in displaying pictures. He
received a
number of potential solutions.
- `Best Practice for picture layout
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/2755be648f6a7fcb>`_
Problems using autostart.cgi
----------------------------
Iain Duncan was having problems getting autostart.cgi to
restart the
CherryPy process when it starts giving 502 errors. The
problem turned
out to be a combination of TurboGears' loading behavior
(assumes it can
look in the cwd if no script is manually specified) and the
permissions
assigned to the Apache user.
- `Problems using autostart.cgi
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/18c9ba0d3fb3f8d0>`_
helpful snippet - force file download box to appear
---------------------------------------------------
Ian Charnas wrote about modifying the 'Content-Type'
response header to
force a file download when needed.
- `helpful snippet - force file download box to appear
<http://group
s.google.com/group/turbogears/browse_thread/thread/f77d25290
1377ca2/ba1d778c25fb5e65>`_
Django-like filters for Kid
---------------------------
Thesamet posted a patch that adds django-like filters to Kid
(and later
another for Genshi), which allows you to easily chain
functions.
- `Django-like filters for Kid
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/5d05cd555e687857>`_
Paginate and SQLAlchemy
-----------------------
Sanjay asked about using the paginate decorator with
SQLAlchemy, which
is currently available as a patch here:
htt
p://trac.turbogears.org/turbogears/ticket/1115
- `Paginate and SQLAlchemy
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/55b4887b4378cd75>`_
Difference with JSLink with render() and display
------------------------------------------------
Matthew Russell asked about methods of including needed
JavaScript
source files when a widget is sent out via serializing the
output of
its ``render()`` method instead of including it in a
template.
TurboGears examines widgets passed through a controller
method and adds
any of their JSLink or CSSLink targets to the head of the
output
document. Those same JSLinks and CSSLinks are available for
examination
and can be passed along with the rendered widget. With the
exception of
certain older versions of the Opera browser JavaScript
sources can be
dynamically added after the page has been loaded without
issue.
- `Difference with JSLink with render() and display
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/8e38b88743bcaf08>`_
Quickstart with SQLAlchemy and Identity in 1.0b2
------------------------------------------------
Eric D Carlson informs us that the model.py file generated
by TG 1.0b2
for use with Identity under SQLAlchemy does not specify the
following
include::
from sqlalchemy.ext.assignmapper import assignmapper
This has been for the next release.
- `Quickstart with SQLAlchemy and Identity in 1.0b2
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/5deafa7f5d1743f8>`_
Showing form and handling it on the same URL
--------------------------------------------
Thesamet asked about POSTing to the controller method that
was used to
generate a form instead of requiring two controller methods
for this
process. A number of solutions were proposed. Matthew Bevan
has written
some documentation on this process, it is posted here:
htt
p://docs.turbogears.org/1.0/UnifiedControllers
- `Showing form and handling it on the same URL
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/43cc8c5123160a66>`_
Website thumbnail genaration on Linux?
--------------------------------------
Christopher Arndt asked about methods to generate a
thumbnail for a
website on linux. There are a number of potential solutions,
most of
which involve working with an enbedded instance of one of
the browser's
rendering engines.
- `Website thumbnail genaration on Linux?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/3756b4571206d902>`_
Using TG under a non-root path
------------------------------
After getting Apache to proxy connections correctly between
a non-root
path and a TurboGears instance, Doug Grainger had problems
with links
built by TurboGears working under an assumed root. The
solution was to
set the ``server.webpath`` config variable to the additional
directory
structure required.
- `non-root directory for apache proxy?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/9a36ee610e8445c6>`_
Catching all exceptions for production sites?
TurboGears mailing list summaries
---------------------------------
Steve Holden asked if someone was willing to provide
summaries for the
TurboGears mailing list, as the volume on the list has
increased
dramatically. Adam Jones agreed to do so. Multiple options
for handling
summary writing were discussed and a project to help make
summaries a
collaborative procedure has been started.
- `I surrender
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/e50e7909c9d3e26f>`_
Generic Form Controller
-----------------------
Ed Singleton created a generic form handling controller that
attempts
to save all supplied arguments as attributes on a provided
object. This
will work well for more simple forms that are saving data to
a
SQLObject class, and could be adapted for other uses.
- `Generic Form Controller
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/2a9cca20dff1f10c>`_
Templates and paths
-------------------
Catalin Marinas asked about working with Kid templates in an
outside
editor and specifying paths in such a way that they do not
need to be
changed between template editing and use in TG. This can be
done with a
pretty simple py:attr trick in the template that allows you
to override
the path when Kid renders it.
- `Templates and paths
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/d133e31c56f9668c>`_
How to show a form error only near the respective field
-------------------------------------------------------
Sanjay ran into a problem displaying form errors next to
only one field
when using a Schema Validator to process requirements for
both fields.
Alberto Valverde suggested looking at Formencode's
``FieldsMatch`` for
a possible solution. Since the validator works on an entire
form you
must create an error dictionary and put the error in the
field's key
there. Sample code to do this was provided.
- `How to show a form error only near the respective field
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/a2b5939794d0a63d>`_
Using JavaScript to warn the user when they have exceeded
the text
allowed for a field
------------------------------------------------------------
--------------------------
Matt Wilson asked about ways to monitor a textarea element
and let the
user know when their text has exceeded the maximum for that
field.
Mochikit.Signal makes it easy to connect a JavaScript
function that
provides the required functionality to the text field.
- `Need help with form input text validation
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/f642e82fb8f0f296>`_
More cool stuff from the dark corners of setuptools
---------------------------------------------------
Adam Jones discussed using setuptools
"console_scripts" entry point to
automatically create a console script that starts your
application when
it is installed. Other uses for this and a potential patch
to make it
easier to enable this behavior were discussed.
- `More cool stuff from the dark corners of setuptools
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/0441f81de5d987e0>`_
Duplicate log messages -- trouble?
----------------------------------
Jeff Hinrichs asked why TurboGears gives duplicate logging
messages in
development mode. This is caused by the way the CherryPy
reloader is
structured, does not affect servers running in production
mode, and is
not a problem in CP3.
- `Duplicate log messages -- trouble?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/d7131218b2649478>`_
Declaring a custom XML namespace in Kid
---------------------------------------
Ryan asked about configuring Kid to allow you to declare
your own XML
namespace and have it appear in template output. Christoph
Zwerschke
pointed out that Kid will omit any namespace entries if the
output
format is set to HTML, which does not support namespaces.
This can be
changed by setting the output format to "xhtml"
and using the
kid.XHTMLSerializer instead of kid.HTMLSerializer
Need sqlobject help with 3-table inner join
-------------------------------------------
Matt Wilson asked for help modeling a 3-table inner join in
SQLObject.
Both a join-based and a view-based solution for this were
discussed.
- `Need sqlobject help with 3-table inner join
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/177414f7cd8d4fb1>`_
Storing a select result between page requests
---------------------------------------------
Collin L asked about a way to store a SQLObject SelectResult
between
requests. Although it is possible to store Python objects in
a
ram-based CherryPy session, that was not really what that
component was
designed to do and it will create problems eventually.
Storing the row
ids was seen as an acceptable workaround.
- `save SELECT result set in the session
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/106f6d4ac9571927>`_
Generating HTML fragments in Kid
--------------------------------
Nick Murdoch asked how to stop Kid from generating the
doctype and xml
tags when you are only trying to generate a fragment of
HTML. Lee
McFadden provided a solution by using a
fragment="true" argument in the
expose decorator.
disabling autocomplete widget from controller
---------------------------------------------
Mike asked about a method of disabling an autocomplete
widget from the
controller. Alberto Valverde suggested passing options from
the
controller class that will set the disabled attribute and
using those
options in the autocomplete widget. Sample code was
provided.
- `disabling autocomplete widget from controller
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/09ca3e6997f8cecc>`_
Paginate stops working in prod?
-------------------------------
Chris Cioffi wrote to ask why pagination works in
development mode but
does not in production. Andrew Grover suggesting the
following
configuration setting, which fixes this issue:
tg.strict_parameters = True
- `Paginate stops working in prod?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/11d1fa77286eab6f>`_
Identity model problems while upgrading to TurboGears 1.0b2
-----------------------------------------------------------
Christopher Arndt wrote to mention that upgrades to 1.0b2
from versions
of TurboGears from before the 1603 changeset may break
Identity. A full
write up with solutions is available here:
http://padd
yland.serveblog.net/article/14
- `Identity model problems while upgrading to TurboGears
1.0b2
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/821793a616523e96>`_
Displaying fields in a Widget without iterating over the
field list
------------------------------------------------------------
-------
Ian Wilson asked about a method besides iteration for
displaying fields
in a widget. Alberto Valverde noted that ``value_for``,
``error_for``,
etc all accept a string that represents the name of a widget
in the
list in addition to the widget instance.
Omitted Threads
===============
- `TurboGears 1.0b2 and workingenv.py
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/3cd06c38b0f7ee47>`_
- `Any indication when 1.1 might get released?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/812ebf702010c57a>`_
- `Common templates for multiple sites
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/fc7f98d319663823>`_
- `Problem with install TG app as windows service
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/c485afdb16133d76>`_
- `TurboGears vs Django
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/d3998a4e750c39c9>`_
- `Debug Turbogears with wingIDE
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/9b3f1617c88c5bab>`_
- `Multiple chained_validators possible?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/3bd068774bebbc9c>`_
- `Catching all exceptions for production sites?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/343e2346ec224daa>`_
- `cloning projects
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/cc8f63edf0446049>`_
- `Turbogearsbook - Bookmarker - example
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/53aa1384ffe57274>`_
- `Disable NestedVariablesFilter in config file?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/9bc6d5aa87198994>`_
- `How about ZK? Ajax but no Javascript
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/a71e19c89ce18b1c>`_
- `Is there any 'tree' template?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/290d6cdac6d0d6c3>`_
- `Multiple buttons on a single form
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/f06d4df7bbda8c61>`_
- `HOWTO display elements in limited rows and cols?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/36d44f02294878fd>`_
- `When I throw an Exception in controller
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/e62e197ed5d2907a>`_
- `using Identity management how can i display login as a
floating
window
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/678f12cf57dfc1d6>`_
- `Converting between Databases
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/b6c47e00c7f71507>`_
- `Turbogears, more than rapid web development framework.
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/15cbfdc241e4e324>`_
- `I can't post here!!
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/f16c69e38a3b313f>`_
- `form's field validation / integer conversion
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/9cc62aa2427f000c>`_
- `turbogears interest..
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/ce2d464b48542404>`_
- `problem getting tg-admin makexe to work
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/2bb4b9a248228e5d>`_
- `JS/CSS where is it
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/018b6c9169288bdc>`_
- `how do I send in correction for the TurboGears book?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/78430f1084bd054c>`_
- `Running site in a subdirectory behind apache breaks
widget
javascript loads
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/dabe7cff4f6cf04d>`_
- `The input field 'self' was not expected.
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/c2a70a9962e08b6e>`_
- `hooking autoreload
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/647d0603a17730f6>`_
- `How to serve up the most recent wordpress blog entry
inside a TG
page?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/5ee0dfa7a4458e15>`_
- `Zen of TurboGears?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/3c123956991a65f9>`_
- `toscawidgets.form.DataGrid and friends
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/6d07559c970246bb>`_
- `genshi and mochikit
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/ab3b24da9f9732d2>`_
- `easy_install ToscaWidgets[cheetah,kid,genshi]
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/b3791cdb004babdb>`_
- `Help! Problems using ${ .. } (Kid/template notation) with
Python
**classes**!
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/118c2f50d0ccae5d>`_
- `Reusing block
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/686a468e6347e933>`_
- `Adding a navigation bar to master.kid
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/7db925e8975e622d>`_
- `[patch] grid css
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/e2d393ccfd7ef5cd>`_
- `Why is the default Mochikit missing modules?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/4e63c0c42f5e52d0>`_
- `Offline install problem
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/85477b753069d02d>`_
- `ToscaWidgets: shortcut to define child fields
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/60e31bdd29b26e82>`_
- `i18n and plural forms?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/0ed0879249effa0d>`_
- `SQLObject migration proposal
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/bd1468df2fb885b3>`_
- `Database schema changes after adding a user
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/abf238097c5ca312>`_
- `To make turbogears talk to a data source other than
Database
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/6924bdc1966a6cbf>`_
Ongoing Threads
===============
- `testing controllers with enabled identity
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/b261ebaccad5b5e2>`_
- `sqlalchemy and run_with_transaction
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/a81bfa81143c3a82>`_
- `Use of ODBC DSN in TurboGears
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/2b36f140c43cb510>`_
- `more than one RDBMS
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/640568e6efdd6a80>`_
- `KID template i18n
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/adddc130c5158e6b>`_
- `Exception using identity model
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/4b2c397ce93645ef>`_
- `ToscaWidgets
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/dfe6030c69d201fa>`_
- `paginate and default
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/5b3d07728bbd685d>`_
- `A problem with lighty/TG using an UDS for the backend
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/68002e5219890a4d>`_
- `Possible new widget: HidingSingleSelectField
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/97cdd4a2cf77b8eb>`_
- `How to quickstart a project with genshi?
<http://groups.google.com/grou
p/turbogears/browse_thread/thread/0c1be4f6bed2fe11>`_
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the
Google Groups "TurboGears Announcements" group.
To post to this group, send email to turbogears-announce googlegroups.com
To unsubscribe from this group, send email to
turbogears-announce-unsubscribe googlegroups.com
For more options, visit this group at http://groups.google.com/group/turbogears-announce?hl=en
-~----------~----~----~----~------~----~------~--~---
|