[IronPython] Database Engine for Django on IronPython

Markus Törnqvist mjt at nysv.org
Fri Oct 23 20:55:38 CEST 2009


On Fri, Oct 23, 2009 at 12:41:21PM -0600, Vernon Cole wrote:
>Okay, it's officially on top of my to-do list. I try to dedicate an hour or
>two each day to open source projects, so this will keep me busy for a
>while.  

If there's anything I can do to help, just ask :)

>The big thing will be paramstyle format convertion.  MS-SQL uses
>qmark.  I am told that django wants pyformat.  Somebody *please* correct me
>if that is wrong.   ( I don't actually USE django yet, but I want to learn.
>Is starting from inside out a bad thing?)

The tutorial wouldn't probably take a long time, even if you just skimmed
through it, but it might not be beneficial here :)

I found this
http://docstore.mik.ua/orelly/other/python/0596001886_pythonian-chp-11-sect-4.html

format I think is more to what's used, but I also think this depends more
on the backend than Django...

See Django-1.0/django/db/backends/sqlite3/base.py

class SQLiteCursorWrapper(Database.Cursor):
    """
    Django uses "format" style placeholders, but pysqlite2 uses "qmark" style.
    This fixes it -- but note that if you want to use a literal "%s" in a query,
    you'll need to use "%%s".
    """

Dunno if that's helpful, or relevant, for you?

Also:
I got this exception Keyword not supported: 'provider'

Any hints on where it came from?

File "C:\Program Files\IronPython 2.6\lib\site-packages\django\db\models\manager.py" in get
  117.         return self.get_query_set().get(*args, **kwargs)
File "C:\Program Files\IronPython 2.6\lib\site-packages\django\db\models\query.py" in get
  317.         num = len(clone)
File "C:\Program Files\IronPython 2.6\lib\site-packages\django\db\models\query.py" in __len__
  173.                 self._result_cache = list(self.iterator())
File "C:\Program Files\IronPython 2.6\lib\site-packages\django\db\models\query.py" in iterator
  288.         for row in self.query.results_iter():
File "C:\Program Files\IronPython 2.6\lib\site-packages\django\db\models\sql\query.py" in results_iter
  205.         for rows in self.execute_sql(MULTI):
File "C:\Program Files\IronPython 2.6\lib\site-packages\django\db\models\sql\query.py" in execute_sql
  1819.         cursor = self.connection.cursor()
File "C:\Program Files\IronPython 2.6\lib\site-packages\django\db\backends\__init__.py" in cursor
  56.         cursor = self._cursor(settings)
File "C:\Program Files\IronPython 2.6\lib\site-packages\kludgemssql\base.py" in _cursor
  97.             self.connection = Database.connect(make_connection_string(settings))
File "C:\Program Files\IronPython 2.6\lib\site-packages\kludgemssql\dbapi.py" in connect
  8.     return generic_connect("System.Data", "System.Data.SqlClient.SqlConnection", connstr)
File "C:\Program Files\IronPython 2.6\lib\site-packages\kludgemssql\adonet2dbapi\generic.py" in connect
  41.     connection = connector(data)
File "C:\Program Files\IronPython 2.6\lib\site-packages\django\utils\functional.py" in __getattr__
  274.         return getattr(self._wrapped, name)
File "C:\Program Files\IronPython 2.6\lib\site-packages\django\utils\functional.py" in __getattr__
  274.         return getattr(self._wrapped, name)

Exception Type: ValueError at /
Exception Value: Keyword not supported: 'provider'.

Thanks!

-- 
mjt




More information about the Ironpython-users mailing list