summaryrefslogtreecommitdiff
path: root/python-django-admin-search.spec
diff options
context:
space:
mode:
Diffstat (limited to 'python-django-admin-search.spec')
-rw-r--r--python-django-admin-search.spec445
1 files changed, 445 insertions, 0 deletions
diff --git a/python-django-admin-search.spec b/python-django-admin-search.spec
new file mode 100644
index 0000000..86dc023
--- /dev/null
+++ b/python-django-admin-search.spec
@@ -0,0 +1,445 @@
+%global _empty_manifest_terminate_build 0
+Name: python-django-admin-search
+Version: 0.3.15
+Release: 1
+Summary: The "Django Admin Search" is a advanced search modal for django admin
+License: MIT
+URL: https://github.com/shinneider/django_admin_search
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/e7/79/f38ca6bd8a0629c2ce9ac91aa0133dd671abd0b40bc17817eaf41d75a0d7/django-admin-search-0.3.15.tar.gz
+BuildArch: noarch
+
+Requires: python3-django
+Requires: python3-isort
+Requires: python3-bandit
+Requires: python3-xenon
+Requires: python3-django
+Requires: python3-django-mock-queries
+Requires: python3-pylint
+Requires: python3-pytest-pylint
+Requires: python3-pytest
+Requires: python3-pytest-cov
+Requires: python3-pytest-watch
+Requires: python3-tox
+Requires: python3-six
+
+%description
+[![Downloads](https://pepy.tech/badge/django-admin-search)](https://pepy.tech/project/django-admin-search)
+[![Downloads](https://pepy.tech/badge/django-admin-search/month)](https://pepy.tech/project/django-admin-search/month)
+[![Downloads](https://pepy.tech/badge/django-admin-search/week)](https://pepy.tech/project/django-admin-search/week)
+[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=shinneider_django-admin-search&metric=coverage)](https://sonarcloud.io/dashboard?id=shinneider_django-admin-search)
+[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=shinneider_django-admin-search&metric=alert_status)](https://sonarcloud.io/dashboard?id=shinneider_django-admin-search)
+[![PyPI version](https://badge.fury.io/py/django-admin-search.svg)](https://badge.fury.io/py/django-admin-search)
+The "Django Admin Search" is a advanced search modal for django admin.
+If you use or like the project, click `Star` and `Watch` to generate metrics and i evaluate project continuity.
+# Install:
+ pip install django-admin-search
+# Usage:
+1. Add to your INSTALLED_APPS, in settings.py:
+ ```
+ INSTALLED_APPS = [
+ 'django_admin_search',
+ ]
+ ```
+2. Create a search form for model:
+ ```
+ from .models import Area
+ from django.forms import ModelForm, Form
+ from django.forms import DateField, CharField, ChoiceField, TextInput
+ class YourFormSearch(Form):
+ name = CharField(required=False)
+ date = DateField(required=False, widget=TextInput(
+ attrs={
+ 'filter_method': '__gte',
+ }
+ ))
+ ```
+3. In your admin:
+ ```
+ from django_admin_search.admin import AdvancedSearchAdmin
+ from .models import YourModel
+ from .form import YourForm, YourFormSearch
+ @register(YourModel)
+ class YourAdmin(AdvancedSearchAdmin):
+ form = YourForm
+ search_form = YourFormSearch
+ ```
+# Advanced:
+1. to multiple filters in same field:
+ ```
+ class YourFormSearch(Form):
+ name = CharField(required=False)
+ begin = DateField(required=False, widget=TextInput(
+ attrs={
+ 'filter_field': 'date',
+ 'filter_method': '__gte',
+ }
+ ))
+ end = DateField(required=False, widget=TextInput(
+ attrs={
+ 'filter_field': 'date',
+ 'filter_method': '__lte',
+ }
+ ))
+ ```
+2. add placeholder and mask
+ ```
+ class YourFormSearch(Form):
+ date = DateField(required=False, widget=TextInput(
+ attrs={
+ 'data-mask': "00/00/0000",
+ 'placeholder': 'MM/DD/YYYY'
+ }
+ ))
+ ```
+3. Custom filter query for a field
+ ```
+ from django_admin_search.admin import AdvancedSearchAdmin
+ from .models import YourModel
+ from .form import YourForm, YourFormSearch
+ @register(YourModel)
+ class YourAdmin(AdvancedSearchAdmin):
+ def search_FieldNameHere(request, field_value, param_values):
+ """
+ intercept query filter for description field
+ """
+ query = Q()
+ # your Q logic here
+ return query
+ ```
+# Images:
+Button in admin list:
+ ![input](https://user-images.githubusercontent.com/30196992/59556917-19182f00-8fa2-11e9-9d9a-955d73d79d11.png)
+Modal opened:
+ ![modal](https://user-images.githubusercontent.com/30196992/59556920-29c8a500-8fa2-11e9-8677-0f340762e64a.png)
+# Development and Running the Tests
+To do development work for Django Admin Search, clone it locally, make and activate a virtualenv for it, then from within the project directory:
+```
+pip install -e ".[dev]"
+```
+To run the tests:
+```
+pytest
+```
+If your work in high difficult test, and need to re run the test every time, use `pytest-watch`:
+```
+ptw # this see file change and re run a test
+```
+when you need to see passed lines by test, run
+```
+pytest --cov-report html
+```
+after this, will be created a `htmlcov` folder in the root
+To run sonar
+```
+pytest --cov-report xml
+pylint ./django_admin_search/ --msg-template="{path}:{line}: [{msg_id}({symbol}), {obj}] {msg}" | tee pylint.txt
+sonar-scanner
+```
+See your code quality in Sonar (in testing, no metrics to approve yet)
+```
+https://sonarcloud.io/dashboard?id=shinneider_django-admin-search
+```
+For future i want to run test's in Travis CI, to check if PR is Ok, but to be effective, i need to cover 80% or more of the code, help-me creating a test case, see this issue [PR - 20](https://github.com/shinneider/django-admin-search/issues/20)
+# Need a Maintainer
+ In the last months i don't have much time, health problemas, change of country and others problems.
+ i have some surgeries for first part of 2022, and all of my current project don't use django-admin.
+ for these reasons, i need a help for a project continuation!!
+
+%package -n python3-django-admin-search
+Summary: The "Django Admin Search" is a advanced search modal for django admin
+Provides: python-django-admin-search
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-django-admin-search
+[![Downloads](https://pepy.tech/badge/django-admin-search)](https://pepy.tech/project/django-admin-search)
+[![Downloads](https://pepy.tech/badge/django-admin-search/month)](https://pepy.tech/project/django-admin-search/month)
+[![Downloads](https://pepy.tech/badge/django-admin-search/week)](https://pepy.tech/project/django-admin-search/week)
+[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=shinneider_django-admin-search&metric=coverage)](https://sonarcloud.io/dashboard?id=shinneider_django-admin-search)
+[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=shinneider_django-admin-search&metric=alert_status)](https://sonarcloud.io/dashboard?id=shinneider_django-admin-search)
+[![PyPI version](https://badge.fury.io/py/django-admin-search.svg)](https://badge.fury.io/py/django-admin-search)
+The "Django Admin Search" is a advanced search modal for django admin.
+If you use or like the project, click `Star` and `Watch` to generate metrics and i evaluate project continuity.
+# Install:
+ pip install django-admin-search
+# Usage:
+1. Add to your INSTALLED_APPS, in settings.py:
+ ```
+ INSTALLED_APPS = [
+ 'django_admin_search',
+ ]
+ ```
+2. Create a search form for model:
+ ```
+ from .models import Area
+ from django.forms import ModelForm, Form
+ from django.forms import DateField, CharField, ChoiceField, TextInput
+ class YourFormSearch(Form):
+ name = CharField(required=False)
+ date = DateField(required=False, widget=TextInput(
+ attrs={
+ 'filter_method': '__gte',
+ }
+ ))
+ ```
+3. In your admin:
+ ```
+ from django_admin_search.admin import AdvancedSearchAdmin
+ from .models import YourModel
+ from .form import YourForm, YourFormSearch
+ @register(YourModel)
+ class YourAdmin(AdvancedSearchAdmin):
+ form = YourForm
+ search_form = YourFormSearch
+ ```
+# Advanced:
+1. to multiple filters in same field:
+ ```
+ class YourFormSearch(Form):
+ name = CharField(required=False)
+ begin = DateField(required=False, widget=TextInput(
+ attrs={
+ 'filter_field': 'date',
+ 'filter_method': '__gte',
+ }
+ ))
+ end = DateField(required=False, widget=TextInput(
+ attrs={
+ 'filter_field': 'date',
+ 'filter_method': '__lte',
+ }
+ ))
+ ```
+2. add placeholder and mask
+ ```
+ class YourFormSearch(Form):
+ date = DateField(required=False, widget=TextInput(
+ attrs={
+ 'data-mask': "00/00/0000",
+ 'placeholder': 'MM/DD/YYYY'
+ }
+ ))
+ ```
+3. Custom filter query for a field
+ ```
+ from django_admin_search.admin import AdvancedSearchAdmin
+ from .models import YourModel
+ from .form import YourForm, YourFormSearch
+ @register(YourModel)
+ class YourAdmin(AdvancedSearchAdmin):
+ def search_FieldNameHere(request, field_value, param_values):
+ """
+ intercept query filter for description field
+ """
+ query = Q()
+ # your Q logic here
+ return query
+ ```
+# Images:
+Button in admin list:
+ ![input](https://user-images.githubusercontent.com/30196992/59556917-19182f00-8fa2-11e9-9d9a-955d73d79d11.png)
+Modal opened:
+ ![modal](https://user-images.githubusercontent.com/30196992/59556920-29c8a500-8fa2-11e9-8677-0f340762e64a.png)
+# Development and Running the Tests
+To do development work for Django Admin Search, clone it locally, make and activate a virtualenv for it, then from within the project directory:
+```
+pip install -e ".[dev]"
+```
+To run the tests:
+```
+pytest
+```
+If your work in high difficult test, and need to re run the test every time, use `pytest-watch`:
+```
+ptw # this see file change and re run a test
+```
+when you need to see passed lines by test, run
+```
+pytest --cov-report html
+```
+after this, will be created a `htmlcov` folder in the root
+To run sonar
+```
+pytest --cov-report xml
+pylint ./django_admin_search/ --msg-template="{path}:{line}: [{msg_id}({symbol}), {obj}] {msg}" | tee pylint.txt
+sonar-scanner
+```
+See your code quality in Sonar (in testing, no metrics to approve yet)
+```
+https://sonarcloud.io/dashboard?id=shinneider_django-admin-search
+```
+For future i want to run test's in Travis CI, to check if PR is Ok, but to be effective, i need to cover 80% or more of the code, help-me creating a test case, see this issue [PR - 20](https://github.com/shinneider/django-admin-search/issues/20)
+# Need a Maintainer
+ In the last months i don't have much time, health problemas, change of country and others problems.
+ i have some surgeries for first part of 2022, and all of my current project don't use django-admin.
+ for these reasons, i need a help for a project continuation!!
+
+%package help
+Summary: Development documents and examples for django-admin-search
+Provides: python3-django-admin-search-doc
+%description help
+[![Downloads](https://pepy.tech/badge/django-admin-search)](https://pepy.tech/project/django-admin-search)
+[![Downloads](https://pepy.tech/badge/django-admin-search/month)](https://pepy.tech/project/django-admin-search/month)
+[![Downloads](https://pepy.tech/badge/django-admin-search/week)](https://pepy.tech/project/django-admin-search/week)
+[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=shinneider_django-admin-search&metric=coverage)](https://sonarcloud.io/dashboard?id=shinneider_django-admin-search)
+[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=shinneider_django-admin-search&metric=alert_status)](https://sonarcloud.io/dashboard?id=shinneider_django-admin-search)
+[![PyPI version](https://badge.fury.io/py/django-admin-search.svg)](https://badge.fury.io/py/django-admin-search)
+The "Django Admin Search" is a advanced search modal for django admin.
+If you use or like the project, click `Star` and `Watch` to generate metrics and i evaluate project continuity.
+# Install:
+ pip install django-admin-search
+# Usage:
+1. Add to your INSTALLED_APPS, in settings.py:
+ ```
+ INSTALLED_APPS = [
+ 'django_admin_search',
+ ]
+ ```
+2. Create a search form for model:
+ ```
+ from .models import Area
+ from django.forms import ModelForm, Form
+ from django.forms import DateField, CharField, ChoiceField, TextInput
+ class YourFormSearch(Form):
+ name = CharField(required=False)
+ date = DateField(required=False, widget=TextInput(
+ attrs={
+ 'filter_method': '__gte',
+ }
+ ))
+ ```
+3. In your admin:
+ ```
+ from django_admin_search.admin import AdvancedSearchAdmin
+ from .models import YourModel
+ from .form import YourForm, YourFormSearch
+ @register(YourModel)
+ class YourAdmin(AdvancedSearchAdmin):
+ form = YourForm
+ search_form = YourFormSearch
+ ```
+# Advanced:
+1. to multiple filters in same field:
+ ```
+ class YourFormSearch(Form):
+ name = CharField(required=False)
+ begin = DateField(required=False, widget=TextInput(
+ attrs={
+ 'filter_field': 'date',
+ 'filter_method': '__gte',
+ }
+ ))
+ end = DateField(required=False, widget=TextInput(
+ attrs={
+ 'filter_field': 'date',
+ 'filter_method': '__lte',
+ }
+ ))
+ ```
+2. add placeholder and mask
+ ```
+ class YourFormSearch(Form):
+ date = DateField(required=False, widget=TextInput(
+ attrs={
+ 'data-mask': "00/00/0000",
+ 'placeholder': 'MM/DD/YYYY'
+ }
+ ))
+ ```
+3. Custom filter query for a field
+ ```
+ from django_admin_search.admin import AdvancedSearchAdmin
+ from .models import YourModel
+ from .form import YourForm, YourFormSearch
+ @register(YourModel)
+ class YourAdmin(AdvancedSearchAdmin):
+ def search_FieldNameHere(request, field_value, param_values):
+ """
+ intercept query filter for description field
+ """
+ query = Q()
+ # your Q logic here
+ return query
+ ```
+# Images:
+Button in admin list:
+ ![input](https://user-images.githubusercontent.com/30196992/59556917-19182f00-8fa2-11e9-9d9a-955d73d79d11.png)
+Modal opened:
+ ![modal](https://user-images.githubusercontent.com/30196992/59556920-29c8a500-8fa2-11e9-8677-0f340762e64a.png)
+# Development and Running the Tests
+To do development work for Django Admin Search, clone it locally, make and activate a virtualenv for it, then from within the project directory:
+```
+pip install -e ".[dev]"
+```
+To run the tests:
+```
+pytest
+```
+If your work in high difficult test, and need to re run the test every time, use `pytest-watch`:
+```
+ptw # this see file change and re run a test
+```
+when you need to see passed lines by test, run
+```
+pytest --cov-report html
+```
+after this, will be created a `htmlcov` folder in the root
+To run sonar
+```
+pytest --cov-report xml
+pylint ./django_admin_search/ --msg-template="{path}:{line}: [{msg_id}({symbol}), {obj}] {msg}" | tee pylint.txt
+sonar-scanner
+```
+See your code quality in Sonar (in testing, no metrics to approve yet)
+```
+https://sonarcloud.io/dashboard?id=shinneider_django-admin-search
+```
+For future i want to run test's in Travis CI, to check if PR is Ok, but to be effective, i need to cover 80% or more of the code, help-me creating a test case, see this issue [PR - 20](https://github.com/shinneider/django-admin-search/issues/20)
+# Need a Maintainer
+ In the last months i don't have much time, health problemas, change of country and others problems.
+ i have some surgeries for first part of 2022, and all of my current project don't use django-admin.
+ for these reasons, i need a help for a project continuation!!
+
+%prep
+%autosetup -n django-admin-search-0.3.15
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-django-admin-search -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Wed May 31 2023 Python_Bot <Python_Bot@openeuler.org> - 0.3.15-1
+- Package Spec generated