Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Models #17

Open
wants to merge 26 commits into
base: slider
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
c1e3b4e
change on openspace models
SandipNup Nov 4, 2019
7901913
Merge pull request #2 from naxadeve/models
SandipNup Nov 4, 2019
27aa07d
Merge branch 'models'
SandipNup Nov 4, 2019
59b88df
api and model for identify open space
SandipNup Nov 4, 2019
536c5cd
Merge pull request #3 from naxadeve/create_open_space_models
SandipNup Nov 4, 2019
7fe2c5c
front page api and models
SandipNup Nov 5, 2019
09c5302
Merge pull request #4 from naxadeve/front
SandipNup Nov 5, 2019
098cc4f
fild changed to fields
SandipNup Nov 5, 2019
eb9c790
Merge pull request #5 from naxadeve/front
SandipNup Nov 5, 2019
66ed106
registered all models on admin site
SandipNup Nov 5, 2019
b83288c
Merge pull request #6 from naxadeve/front
SandipNup Nov 5, 2019
a4a7a95
province missed added on admin site
SandipNup Nov 5, 2019
d862fc9
resource
SandipNup Nov 6, 2019
6aea5e1
Merge pull request #7 from naxadeve/resource
SandipNup Nov 6, 2019
6ac5d61
abc
SandipNup Nov 6, 2019
c9da675
Merge pull request #8 from naxadeve/resource
SandipNup Nov 6, 2019
1f6aba5
v
SandipNup Nov 6, 2019
3d57838
Merge pull request #9 from naxadeve/video_field_changed
SandipNup Nov 6, 2019
16b70d8
field altered to textfield
SandipNup Nov 6, 2019
b973ec4
Merge pull request #10 from naxadeve/video_field_changed
SandipNup Nov 6, 2019
ab6e662
resource api managed
SandipNup Nov 7, 2019
b9900a2
code field added on province and csv code
SandipNup Nov 7, 2019
5130a77
open_space csv read, district csv read and resource search api
SandipNup Nov 8, 2019
aea7eb1
district csv read
SandipNup Nov 8, 2019
a66b971
csv read files and dumpdata
SandipNup Nov 8, 2019
0cf5a9a
Merge pull request #14 from naxadeve/csv_read
SandipNup Nov 8, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
170 changes: 170 additions & 0 deletions iom/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,170 @@

# Created by https://www.gitignore.io/api/python,django
# Edit at https://www.gitignore.io/?templates=python,django

### Django ###
*.log
*.pot
*.pyc
__pycache__/
local_settings.py
db.sqlite3
db.sqlite3-journal
media

# If your build process includes running collectstatic, then you probably don't need or want to include staticfiles/
# in your Git repository. Update and uncomment the following line accordingly.
# <django-project-name>/staticfiles/

### Django.Python Stack ###
# Byte-compiled / optimized / DLL files
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
pip-wheel-metadata/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
.hypothesis/
.pytest_cache/

# Translations
*.mo

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
target/

# pyenv
.python-version

# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
#Pipfile.lock

# celery beat schedule file
celerybeat-schedule

# SageMath parsed files
*.sage.py

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# Mr Developer
.mr.developer.cfg
.project
.pydevproject

# mkdocs documentation
/site

# mypy
.mypy_cache/
.dmypy.json
dmypy.json

# Pyre type checker
.pyre/

### Python ###
# Byte-compiled / optimized / DLL files

# C extensions

# Distribution / packaging

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.

# Installer logs

# Unit test / coverage reports

# Translations

# Scrapy stuff:

# Sphinx documentation

# PyBuilder

# pyenv

# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.

# celery beat schedule file

# SageMath parsed files

# Spyder project settings

# Rope project settings

# Mr Developer

# mkdocs documentation

# mypy

# Pyre type checker

# End of https://www.gitignore.io/api/python,django

Binary file modified iom/api/__pycache__/urls.cpython-36.pyc
Binary file not shown.
Binary file modified iom/api/serializers/__pycache__/core_serializers.cpython-36.pyc
Binary file not shown.
Binary file not shown.
15 changes: 14 additions & 1 deletion iom/api/serializers/core_serializers.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,21 @@
from core.models import Slider
from core.models import Slider, CreateOpenSpace, Resource
from rest_framework import serializers


class SliderSerializer(serializers.ModelSerializer):
class Meta:
model = Slider
fields = '__all__'



class CreateOpenSpaceSerializer(serializers.ModelSerializer):
class Meta:
model = CreateOpenSpace
fields = '__all__'


class ResourceSerializer(serializers.ModelSerializer):
class Meta:
model = Resource
fields = '__all__'
22 changes: 22 additions & 0 deletions iom/api/serializers/front_serializer.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
from front.models import OpenSpaceDef, OpenSpaceIde, Header
from rest_framework import serializers


class HeaderSerializer(serializers.ModelSerializer):
class Meta:
model = Header
fields = '__all__'


class OpenSpaceDefSerializer(serializers.ModelSerializer):
class Meta:
model = OpenSpaceDef
fields = '__all__'



class OpenSpaceIdeSerializer(serializers.ModelSerializer):
class Meta:
model = OpenSpaceIde
fields = '__all__'

8 changes: 8 additions & 0 deletions iom/api/urls.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,17 @@
from api.viewsets import core_viewsets
from django.urls import path, include
from api.viewsets import core_viewsets
from api.viewsets import front_viewset

router = DefaultRouter()
router.register(r'slider', core_viewsets.SliderViewSet)
router.register(r'identify_open_space', core_viewsets.CreateOpenSpaceViewSet)
router.register(r'resource', core_viewsets.ResourceViewSet)


router.register(r'header', front_viewset.HeaderViewSet)
router.register(r'open_space_ide', front_viewset.OpenSpaceIdeViewSet)
router.register(r'open_space_def', front_viewset.OpenSpaceDefViewSet)

urlpatterns = [
path('', include(router.urls)),
Expand Down
Binary file modified iom/api/viewsets/__pycache__/core_viewsets.cpython-36.pyc
Binary file not shown.
Binary file not shown.
37 changes: 34 additions & 3 deletions iom/api/viewsets/core_viewsets.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
from rest_framework import viewsets
from core.models import Slider
from api.serializers.core_serializers import SliderSerializer
from core.models import Slider, CreateOpenSpace, Resource
from api.serializers.core_serializers import SliderSerializer,\
CreateOpenSpaceSerializer, ResourceSerializer
from rest_framework.decorators import api_view
from rest_framework.response import Response

Expand All @@ -11,7 +12,37 @@ class SliderViewSet(viewsets.ModelViewSet):
permission_classes = []


@api_view(['GET',])
class CreateOpenSpaceViewSet(viewsets.ModelViewSet):
serializer_class = CreateOpenSpaceSerializer
queryset = CreateOpenSpace.objects.all()
permission_classes = []


class ResourceViewSet(viewsets.ModelViewSet):
serializer_class = ResourceSerializer
queryset = Resource.objects.all()
permission_classes = []

def filter_queryset(self, queryset):
category = self.request.query_params.get('category')
document_type = self.request.query_params.get('document_type')
content = self.request.query_params.get('content')

if category and document_type:
return self.queryset.filter(category=category,
document_type=document_type)

elif content:
print('abc')
return self.queryset.filter(title__icontains=content)

else:
return self.queryset




@api_view(['GET', ])
def dummy_api_view(request):
data = {
"open_space": 192929,
Expand Down
24 changes: 24 additions & 0 deletions iom/api/viewsets/front_viewset.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
from rest_framework import viewsets
from front.models import OpenSpaceDef, OpenSpaceIde, Header
from api.serializers.front_serializer import OpenSpaceDefSerializer,\
OpenSpaceIdeSerializer, HeaderSerializer


class HeaderViewSet(viewsets.ModelViewSet):
serializer_class = HeaderSerializer
queryset = Header.objects.all()
permission_classes = []


class OpenSpaceIdeViewSet(viewsets.ModelViewSet):
serializer_class = OpenSpaceIdeSerializer
queryset = OpenSpaceIde.objects.all()
permission_classes = []


class OpenSpaceDefViewSet(viewsets.ModelViewSet):
serializer_class = OpenSpaceDefSerializer
queryset = OpenSpaceDef.objects.all()
permission_classes = []


Binary file modified iom/core/__pycache__/admin.cpython-36.pyc
Binary file not shown.
Binary file modified iom/core/__pycache__/models.cpython-36.pyc
Binary file not shown.
19 changes: 19 additions & 0 deletions iom/core/admin.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,22 @@
from django.contrib import admin
from core.models import Slider, Province, District, Municipality,\
SuggestedUse, Services, Question, OpenSpace, Report, CreateOpenSpace,\
NearbyAmenities, EducationFacility, HealthFacility, Resource

# Register your models here.


admin.site.register(Slider)
admin.site.register(Province)
admin.site.register(District)
admin.site.register(Municipality)
admin.site.register(SuggestedUse)
admin.site.register(Services)
admin.site.register(Question)
admin.site.register(OpenSpace)
admin.site.register(Resource)
admin.site.register(Report)
admin.site.register(CreateOpenSpace)
admin.site.register(NearbyAmenities)
admin.site.register(EducationFacility)
admin.site.register(HealthFacility)
Empty file.
54 changes: 54 additions & 0 deletions iom/core/management/commands/district.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
from django.core.management.base import BaseCommand

import pandas as pd

from core.models import Province, District, OpenSpace

from django.contrib.gis.geos import GEOSGeometry


class Command(BaseCommand):
help = 'load province data from province.xlsx file'

def add_arguments(self, parser):
parser.add_argument('--path', type=str)

def handle(self, *args, **kwargs):
path = kwargs['path']
df = pd.read_csv(path)
upper_range = len(df)

print("Wait Data is being Loaded")

try:
district = [
District(
province=Province.objects.get(
code=(df['Province_id'][row])),
#
# district=District.objects.get(
# district_code=(df['District_id'][row])),
#
# name=(df['Name'][row]).capitalize().strip(),
#
# gn_type_en=(df['Type_en'][row]).capitalize().strip(),
#
# gn_type_np=(df['Type'][row]).capitalize().strip(),
name=df['District_name'][row],
code=df['District_id'][row],

# boundary=GEOSGeometry(df['geom'][row]),
# p_code=df['ADMIN2P_CODE'][row],

) for row in range(0, upper_range)

]

district_data = District.objects.bulk_create(district)

if district_data:
self.stdout.write('Successfully updated data ..')

except Exception as e:
print(e)

Loading