Commit graph

60 commits

Author SHA1 Message Date
Iwo Herka
dcfd8e4e7e Validate against illegal assignments (#17) 2018-06-21 14:27:04 +02:00
Iwo Herka
6f3329d2ae Work on code style in models (#3) 2018-06-20 15:51:02 +02:00
Iwo Herka
d8251d2646 Remove unused field from attribute 2018-06-20 11:44:07 +02:00
Iwo Herka
cd4acd1f9c Bump version to 0.10.1 2018-06-20 09:43:36 +02:00
Iwo Herka
df9c4b66fa Fix Python 2.7 compatibility 2018-06-14 16:15:36 +02:00
Siegmeyer of Catarina
00562c4d88 Configure coverage's ignored files 2018-06-14 16:15:36 +02:00
Siegmeyer of Catarina
9908669496 Bump minor to 0.10.0 2018-06-14 16:15:36 +02:00
Siegmeyer of Catarina
591e4e11b1 Remove unused imports (#3) 2018-06-14 16:15:30 +02:00
Siegmeyer of Catarina
b9e788ab7d Change typechecking with type to isinstance 2018-06-04 23:52:36 +02:00
Iwo Herka
4958bfd04b
Remove Sites framework dependency (#9) (#15)
This merge does two things:

    1. Removes completely dependency on the Sites framework (which was implemented erroneously).
    Specifically, site field on Attribute and related constraints. With those changes, attributes are now global. That is, all attributes are visible to all entities. As a result, slug in now unique.

    2. Content-type field is used to limit entities that can be assigned an attribute (see get_all_attributes method on Entity). This way attributes with content_type assigned are, for all intended purposes, private to Entity of that content type. The problem is that those attributes are still visible to other entities. Moreover, originally, attributes had non-unique slugs that are unique together with content_type and site. With removal of site (and because content_type is nullable) a situation might exist in which two attributes exist with the same slug/name but one with content_type and one with NULL. Simple solution to all this hassle is to drop private attributes altogether, which is what this pull-request does.

Resolves: #9

Commits:
* Remove sites dependency; fix Attribute uniqueness (#9)
* Add uniqueness test to attributes
* Remove content_type from Attribute class
* Update runtests
* Remove redudant  call
* Fix wrong assertion in attribute test
* Fix string formatting
2018-06-04 17:19:05 +02:00
Siegmeyer of Catarina
9bf3dbfb5d Migrate module docstrings to Google-style format (#10) (#5) 2018-06-03 15:42:16 +02:00
Iwo Herka
a4a3511c56 Add docstring for the EavConfig (#5) 2018-06-01 14:37:18 +02:00
Siegmeyer of Catarina
e5cd77b075 Sort imports (#3)
Make import statements PEP 8 compliant.
2018-05-31 03:21:20 +02:00
Iwo Herka
1813cacf1b Simplify assignment to __version__
This commit removes `get_version` helper which is completely useless and
not used anywhere else, i.e. from now on `__version__` is assigned directly.
As a side-effect, this makes patch number always visible in the
version number. This is correct behavior; there is no reason to hide it
when it equals 0.

Links: https://semver.org/
2018-05-30 17:12:09 +02:00
Iwo Herka
a050eb3504 Remove remaining license notices (#3) 2018-05-30 17:04:11 +02:00
Iwo Herka
b99a3c0641 Move license notice to root directory (#3) 2018-05-18 13:37:39 +02:00
Iwo Herka
2b6f470fa7
Add Q-expr rewriter/fix relational algebra (#1)
* Add debug Q-expr print function

* Change old __unicode__ methods to __str__ format

* Move __unicode__ methods to __str__

* Rewrite AND Q-expressions to safe form

* Make Q-expr debug print method use nicer format

* Document rewrite_q_expr function

* Rewrite/improve queries' test

* Document some more code

* Reorganize and document queryset module

* Add more tests for queries

* Use generic relation attribute instead instead of 'eav_values'

* Update docstring

* Fix a typo

* Move up a variable

* Rename a function

* Check if 'in' filter rhs is not a QuerySet

* Add newline to the end of file

* Fix typo; tweak docstring
2018-05-18 13:18:24 +02:00
Iwo Herka
bcd129a03d Move relational operators from EntityManager to EavQuerySet; allow for chaining 2018-04-26 13:29:57 +02:00
Iwo Herka
342fee006a Remove Vim directives 2018-04-06 16:53:32 +02:00
Iwo Herka
841b3b6836 Fix manager detachment 2018-04-06 16:27:18 +02:00
Iwo Herka
8131da4389 Fix misc_models test 2018-04-06 14:45:27 +02:00
Iwo Herka
17c8d84295 Make tests runnable with Python 3 2018-04-06 13:59:51 +02:00
Iwo Herka
7d1aca31b1 Test fixes + run script. 2017-09-05 12:01:20 +02:00
Iwo Herka
26940c28ea Properly merge field lookups (https://github.com/mvpdev/django-eav/issues/43). 2017-09-04 15:32:21 +02:00
Iwo Herka
47c7e81b7b Proper manager (re)attachement. 2017-09-04 14:35:35 +02:00
Iwo Herka
57252d09d0 Remove default 'objects' manager when appending EntityManager. 2017-09-04 13:06:16 +02:00
JP White
ac6dcc80c3 Merge pull request #33 from jpwhite3/master
Adding pre-reqs and registration decorator. Resolves issues #23 and #39
2017-01-26 20:46:59 -05:00
Hamdi Sahloul
5da8007d8b Backwards compatibility 2016-11-03 05:11:44 +09:00
Hamdi Sahloul
0495d4391e Removed deprecated get_field_by_name() function call 2016-10-15 22:59:24 +09:00
Hamdi Sahloul
464a947548 Support attribute per model and attributes ordering 2016-10-14 02:00:55 +09:00
Hamdi Sahloul
f29f4ab2c3 Include migrations 2016-10-14 02:00:54 +09:00
Marc Chakiachvili
1eb6c3cd49 Correct sites error when running 'makemigrations' 2016-01-18 15:03:46 +01:00
Marc Chakiachvili
05866d2f9e Make eav 'timezone' aware :
- changed called from datetime.now to timezone.now
- changed called from datetime(...) to timezone.datetime(...)
- changed forms validator as well
2016-01-15 15:16:28 +01:00
Marc Chakiachvili
91d3c47042 Compatibility from django 1.9 - Issue #35 2016-01-15 11:16:10 +01:00
JP White
36bfc2e0e8 Adding decorator tests 2015-08-16 00:30:42 -04:00
JP White
3d94eb3ec2 Adding registration decorator and updating README with Prereqs for Sites Framework 2015-08-15 23:34:11 -04:00
Filip Novák
16ec66e09d Fix Python 3 syntax error 2015-06-23 13:56:03 +02:00
MadEng84
55afd2aab9 bugfix #26 - support for new ContentType-s field related_query_name 2015-02-17 10:29:54 +01:00
GingerJoos
6d6e42e3c4 Change get_or_create() to return tuple
Change get_or_create() to return a tuple, confirming to Django's default behaviour ( see https://docs.djangoproject.com/en/dev/ref/models/querysets/#get-or-create )
2013-12-31 12:04:27 +05:30
Bruno Tavares
7d3016cfbc Make doctest skip invalid tests 2013-11-25 23:17:52 +00:00
Bruno Tavares
7f92a4ec20 Trying to avoid doctest 2013-11-25 23:01:34 +00:00
Bruno Tavares
94b4dd762b more fixes to the tests 2013-11-25 22:56:18 +00:00
Bruno Tavares
fdc7886614 in doc test correction ( duplicate key ) 2013-11-25 22:52:18 +00:00
Bruno Tavares
a70b9c5359 Fixed in do test 2013-11-25 22:50:15 +00:00
Bruno Tavares
7a2fd8bfa1 Corrected test 2013-11-25 22:49:02 +00:00
Bruno Tavares
1ac549409a no need to fetch all attributes on each save! 2013-11-25 22:23:31 +00:00
Nic Pottier
2b8eaf9e44 big optimization to save and validate hooks to not cause lots of single db queries 2013-02-19 17:05:30 +02:00
Tim Sutton
c373704c50 Some small typo fixes 2012-04-04 22:57:54 +02:00
Tim Sutton
21aa62a35c Fix Unexpected keyword arguments to values_list: ['Flat'] bug in models.entity.get_all_attribute_slugs 2012-04-04 22:56:24 +02:00
Steve Ivy
17a0bf4203 admin fixes:- switch order of objects and on_site properties on Attribute so that all Attributes are listed in the admin- add site to list_display and list_filter 2011-03-09 10:39:43 -07:00