Commit Graph

151 Commits

Author SHA1 Message Date
M1ha
95055996ad 1) Further refactoring of as_sql():
merged very similar QuerySet and AggregateQuerySet methods
2) Fixed some bugs, caused by conditions_as_sql() parameters change
2018-12-08 11:57:08 +05:00
M1ha
3bc5f27cda 1) Unified QuerySet filter and exclude methods,
so both can load *q and **kwargs at the same time
 and accept prewhere flag
2) Added ability to add prewhere clause
 in QuerySet.filter() and QuerySet.exclude() methods
3) Added ability to check, if Q() object is empty (including bool check)
4) Refactored QuerySet.as_sql() method:
 + don't add GROUP BY and WHERE if it's not needed
 + ability to add PREWHERE condition
 + Common style of adding optional query parts
2018-12-08 11:40:05 +05:00
Itai Shirav
f24749112e support decimal fields 2018-10-14 09:26:07 +03:00
Itai Shirav
658c7b42ee Bug fix: wrong parentheses when building queries using Q objects 2018-10-13 19:49:12 +03:00
Itai Shirav
f2a731711d Bug fix: QuerySet.count() ignores slicing 2018-10-13 19:29:36 +03:00
Itai Shirav
6416b25818 Merge branch 'filtering_null' of https://github.com/kalombos/infi.clickhouse_orm into kalombos-filtering_null 2018-08-19 18:36:08 +03:00
Itai Shirav
44d3dcee34 Added Database.does_table_exist method 2018-08-19 18:20:17 +03:00
Itai Shirav
acf2f7a189 Check for database existence, to allow delayed creation 2018-08-19 18:02:37 +03:00
Itai Shirav
32c77ab190 Include alias and materialized fields in queryset results 2018-08-19 16:18:15 +03:00
Itai Shirav
be1cbdee76 Add validation of array field's inner field 2018-08-13 08:36:01 +03:00
fanchi
5059902947 Added a test for isinstance and fixed a bug 2018-07-05 16:36:51 +03:00
fanchi
3fa18d32d9 Add method to check instance types of field and its inner fields 2018-07-04 18:32:08 +03:00
fanchi
a836031d36 Trivial fix nullable field disregard extra_null_values 2018-07-02 10:47:36 +03:00
kalombo
a32453394a add support for Filtering null values 2018-06-26 17:20:11 +05:00
Itai Shirav
86f05a0c23 Python 3 compatibility 2018-06-10 16:17:35 +03:00
Itai Shirav
d7382e1ce2 fix field name parsing when field contains double underscore #69 2018-06-10 14:27:51 +03:00
Itai Shirav
e0b125f6a6 Merge branch 'add-timezone-breaker' of https://github.com/vv-p/infi.clickhouse_orm into vv-p-add-timezone-breaker 2018-06-10 14:08:20 +03:00
Itai Shirav
2bca8b4fb8 Improve creation time of model instances by keeping a dictionary of default values 2018-05-14 07:37:56 -04:00
Itai Shirav
ab0755ad90 - Rename Model.system to Model._system to prevent collision with a column that has the same name
- Rename `Model.readonly` to `Model._readonly` to prevent collision with a column that has the same name
- The `field_names` argument to `Model.to_tsv` is now mandatory
2018-05-14 07:09:57 -04:00
Itai Shirav
1bd3e63cd4 minor improvements in error handling and testing 2018-05-10 15:24:38 +03:00
Понаревский Владимир
c20846122f Fix after review 2018-05-08 17:24:27 +03:00
Понаревский Владимир
793726adb2 Fix after review 2018-05-08 16:41:50 +03:00
Понаревский Владимир
a5c93dc176 Add disabler for the timezone getting 2018-05-08 13:19:45 +03:00
M1ha
eb15dd65ec Added custom partitioning to all MergeTree family engines 2018-04-24 15:19:05 +05:00
Itai Shirav
20e609f952 Update docs 2018-04-21 15:23:00 +03:00
Itai Shirav
7cc5c50240 Merge branch 'issue-66' of https://github.com/carrotquest/infi.clickhouse_orm into carrotquest-issue-66 2018-04-21 13:50:09 +03:00
Itai Shirav
66eda2214c Make tests pass 2018-04-21 13:27:42 +03:00
Itai Shirav
b6229125a3 Merge branch 'custom_partitioning' of https://github.com/carrotquest/infi.clickhouse_orm into carrotquest-custom_partitioning
# Conflicts:
#	src/infi/clickhouse_orm/engines.py
#	src/infi/clickhouse_orm/models.py
#	tests/test_database.py
#	tests/test_engines.py
2018-04-21 13:04:19 +03:00
Itai Shirav
6fa6786a9c Update docs 2018-04-21 12:10:30 +03:00
Ivan Ladelshchikov
a5f2fa4d76 add Distributed engine 2018-04-21 11:48:32 +03:00
Ivan Ladelshchikov
3268019216 _fields and _writable_fields are OrderedDicts 2018-04-21 11:48:32 +03:00
Ivan Ladelshchikov
57112f9de6 add ServerError exception 2018-04-21 11:48:32 +03:00
M1ha
0927136ffd 1) Added a test on https://github.com/Infinidat/infi.clickhouse_orm/issues/66
2) Fixed issue
2018-04-20 12:38:36 +05:00
M1ha
7fb0589692 1. Added support of custom partitioning (https://clickhouse.yandex/docs/en/table_engines/custom_partitioning_key/)
2. Added attribute server_version to Database class
3. Changed Engine.create_table_sql(), Engine.drop_table_sql(), Model.create_table_sql(), Model.drop_table_sql()  parameter to db from db_name
2018-04-12 14:21:46 +05:00
Itai Shirav
cd8d82c226 Update docs 2018-04-07 15:20:33 +03:00
desile
c98edc4f77 Added doc for between operator 2017-12-03 21:54:58 +03:00
pv.larkin
d553aaf9eb Add between operator 2017-11-29 14:52:52 +03:00
pv.larkin
0342dc863b Add OR and AND operations for Q objects 2017-11-29 14:27:54 +03:00
Itai Shirav
fa3f96e464 Merge branch 'migrate_materialized_fields' of https://github.com/carrotquest/infi.clickhouse_orm into carrotquest-migrate_materialized_fields
# Conflicts:
#	tests/sample_migrations/0012.py
#	tests/test_migrations.py (reverted from commit 288db6a28f56b9ae5a4fa1c0ead111f679886488)
2017-10-30 15:49:25 +02:00
Itai Shirav
b758333f42 Merge branch 'dollar_issue_fix' of https://github.com/carrotquest/infi.clickhouse_orm into carrotquest-dollar_issue_fix 2017-10-30 15:30:31 +02:00
Itai Shirav
b93c145cde Merge branch 'tsionyx-develop' into develop 2017-10-30 15:28:37 +02:00
Itai Shirav
314090fa56 Merge branch 'raw_migrations' of https://github.com/carrotquest/infi.clickhouse_orm into carrotquest-raw_migrations 2017-10-30 15:09:23 +02:00
Itai Shirav
dcbf371077 Merge branch 'develop' of https://github.com/anci/infi.clickhouse_orm into anci-develop 2017-10-30 15:07:00 +02:00
Itai Shirav
48c08b869e Merge branch 'carrotquest-develop' into develop 2017-10-30 15:00:17 +02:00
Ivan Ladelshchikov
50e63fb1f8 show field name in error when invalid value assigned 2017-10-10 15:30:37 +04:00
M1ha
5ea20a11a9 Added tests and resolved https://github.com/Infinidat/infi.clickhouse_orm/issues/47 2017-10-10 12:24:17 +05:00
M1ha
b952f93e78 Merge branch 'develop' of https://github.com/Infinidat/infi.clickhouse_orm into migrate_materialized_fields 2017-10-10 11:24:35 +05:00
M1ha
911af41ec1 Fixed https://github.com/Infinidat/infi.clickhouse_orm/issues/56 issue 2017-10-04 17:53:23 +05:00
Ivan Ladelshchikov
38472012db allow ISO 8601 compliant values in DateTimeField 2017-10-03 13:26:00 +04:00
M1ha
51a814732b Merge branch 'develop' of https://github.com/Infinidat/infi.clickhouse_orm into raw_migrations
# Conflicts:
#	docs/schema_migrations.md
#	tests/sample_migrations/0010.py
#	tests/sample_migrations/0011.py
2017-10-02 15:49:59 +05:00