| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
they're too big
- fix the targeting of module names moved around by using custom handlers for "Bases", etc.
|
| |
|
|
| |
- clean up these tests to not use globals so much, close out the session
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
that ``discriminator_on_association.py`` makes use of single table
inheritance do the work with the "discriminator". Also
added a true "generic foreign key" example, which works similarly
to other popular frameworks in that it uses an open-ended integer
to point to any other table, foregoing traditional referential
integrity. While we don't recommend this pattern, information wants
to be free. Also in 0.8.3.
- Added a convenience class decorator :func:`.as_declarative`, is
a wrapper for :func:`.declarative_base` which allows an existing base
class to be applied using a nifty class-decorated approach. Also
in 0.8.3.
|
| |
|
|
| |
follow up to https://bitbucket.org/zzzeek/sqlalchemy/pull-request/2
|
| |
|
|
| |
The code that determines whether an object in a relation has been added/removed does not take into account that that relation may be a backref. If the relation is a backref, then nothing on the current table is changing, and therefore no history entry should be created.
|
| |\ |
|
| | |
| |
| |
| |
| | |
of SQL cache keys wasn't applying deduping labels to the
statement the same way :class:`.Query` normally does.
|
| |/
|
|
| |
- went through examples/ and cleaned out excess list() calls
|
| | |
|
| |
|
|
|
|
|
|
|
| |
the limit/offset parameter values wouldn't be taken into
account when computing the cache key. The
_key_from_query() function has been simplified to work
directly from the final compiled statement in order to get
at both the full statement as well as the fully processed
parameter list.
|
| | |
|
| | |
|
| |
|
|
| |
which was due to the change in #2614.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
can now provide "bind expressions" and
"column expressions" which allow compile-time
injection of SQL expressions into statements
on a per-column or per-bind level. This is
to suit the use case of a type which needs
to augment bind- and result- behavior at the
SQL level, as opposed to in the Python level.
Allows for schemes like transparent encryption/
decryption, usage of Postgis functions, etc.
[ticket:1534]
- update postgis example fully.
- still need to repair the result map propagation
here to be transparent for cases like "labeled column".
|
| |
|
|
|
| |
- we don't have coverage for type-wide instrumentation events, the listener was broke.
could break again too.
|
| |
|
|
| |
shortly)
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
and the entire related system of alternate
class implementation is now moved out
to sqlalchemy.ext.instrumentation. This is
a seldom used system that adds significant
complexity and overhead to the mechanics of
class instrumentation. The new architecture
allows it to remain unused until
InstrumentationManager is actually imported,
at which point it is bootstrapped into
the core.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
reflection" system has been moved into the
declarative extension itself, using the
new DeferredReflection class. This
class is now tested with both single
and joined table inheritance use cases.
[ticket:2485]
- [bug] The autoload_replace flag on Table,
when False, will cause any reflected foreign key
constraints which refer to already-declared
columns to be skipped, assuming that the
in-Python declared column will take over
the task of specifying in-Python ForeignKey
or ForeignKeyConstraint declarations.
|
| |
|
|
|
|
|
|
|
|
|
| |
provides the functionality of query.with_polymorphic()
in a standalone form. It can be applied to any
entity within a query, including as the target
of a join in place of the "of_type()" modifier.
[ticket:2333]
- redo a large portion of the inheritance docs in terms
of declarative, new with_polymorphic() function
- upgrade examples/inheritance/polymorph, rename to "joined"
|
| |
|
|
|
|
|
| |
in Beaker example to pull bindparams from the
fully compiled statement, as a quick means
to get everything including subqueries in the
columns clause, etc.
|
| |
|
|
| |
added a tweak to make that possible
|
| |
|
|
|
|
|
|
| |
example to support single-table inheritance,
multiple calls to prepare(), tables that
are present in alternate schemas,
establishing only a subset of classes
as reflected.
|
| | |
|
| |
|
|
|
|
| |
added, illustrates how best to mix table reflection
with declarative as well as uses some new features
from [ticket:2356].
|
| | |
|
| | |
|
| |
|
|
| |
session before dropping tables. [ticket:2346]
|
| |
|
|
|
|
| |
a bit to use a declarative mixin as well
as an event listener, instead of a metaclass +
SessionExtension. [ticket:2313]
|
| |
|
|
|
|
| |
the "unique" flag was not removed from a
single-table-inheritance subclass which
generates columns to put up onto the base.
|
| |
|
|
|
| |
to apply the CAST such that it works on
PG, other databases. [ticket:2266]
|
| |
|
|
|
| |
for bind param callable correctly in 0.7
style.
|
| |
|
|
|
|
|
|
|
|
|
| |
to not rely upon SQLAlchemy test libs,
nosetests must be run from within
examples/versioning to get around setup.cfg
breaking it.
- Tweak to examples/versioning to pick the
correct foreign key in a multi-level
inheritance situation.
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
examples and replaced with an updated set of
examples that use declarative mixins,
"generic_associations". Each presents an alternative
table layout.
|
| |
|
|
|
|
|
| |
classes to a new test.lib.fixtures module
- move testing.TestBase to test.lib.fixtures
- massive search and replace
|
| |
|
|
|
|
|
|
| |
Session argument "query_cls" as a constructor argument,
to enable further subclassing of ShardedQuery.
[ticket:2090]
- The Beaker caching example allows a "query_cls" argument
to the query_callable() function. [ticket:2090]
|
| |
|
|
|
|
| |
to use declarative, added a new example
dict_of_sets_with_default.py, a "pushing the envelope"
example of association proxy.
|
| |
|
|
|
|
| |
and 'offset', bind params within embedded
FROM clauses (like when you use union() or
from_self()) when generating a cache key.
|
| | |
|
| |
|
|
|
|
|
| |
more typing
on the import but this is just clearer.
- adapt dictlike-polymorphic.py to use hybrid.
|
| | |
|