biweeklybudget.flaskapp.views.projects module¶
-
class
biweeklybudget.flaskapp.views.projects.
BoMItemAjax
[source]¶ Bases:
flask.views.MethodView
Render the GET /ajax/projects/bom_item/<int:id> JSON view.
-
methods
= {'GET'}¶
-
-
class
biweeklybudget.flaskapp.views.projects.
BoMItemFormHandler
[source]¶ Bases:
biweeklybudget.flaskapp.views.formhandlerview.FormHandlerView
Handle POST /forms/bom_item
-
methods
= {'POST'}¶
-
-
class
biweeklybudget.flaskapp.views.projects.
BoMItemView
[source]¶ Bases:
flask.views.MethodView
Render the GET /project/<int:project_id> view using the
bomitem.html
template.-
methods
= {'GET'}¶
-
-
class
biweeklybudget.flaskapp.views.projects.
BoMItemsAjax
[source]¶ Bases:
biweeklybudget.flaskapp.views.searchableajaxview.SearchableAjaxView
Handle GET /ajax/projects/<int:project_id>/bom_items endpoint.
-
_filterhack
(qs, s, args)[source]¶ DataTables 1.10.12 has built-in support for filtering based on a value in a specific column; when this is done, the filter value is set in
columns[N][search][value]
where N is the column number. However, the python datatables package used here only supports the globalsearch[value]
input, not the per-column one.However, the DataTable search is implemented by passing a callable to
table.searchable()
which takes two arguments, the current Query that’s being built, and the user’ssearch[value]
input; this must then return a Query object with the search applied.In python datatables 0.4.9, this code path is triggered on
if callable(self.search_func) and search.get("value", None):
As such, we can “trick” the table to use per-column searching (currently only if global searching is not being used) by examining the per-column search values in the request, and setting the search function to one (this method) that uses those values instead of the global
search[value]
.Parameters: Returns: Query with searching applied
Return type: sqlalchemy.orm.query.Query
-
get
(project_id)[source]¶ Render and return JSON response for GET /ajax/projects/<int:project_id>/bom_items
-
methods
= {'GET'}¶
-
-
class
biweeklybudget.flaskapp.views.projects.
ProjectAjax
[source]¶ Bases:
flask.views.MethodView
Render the GET /ajax/projects/<int:project_id> JSON view.
-
methods
= {'GET'}¶
-
-
class
biweeklybudget.flaskapp.views.projects.
ProjectsAjax
[source]¶ Bases:
biweeklybudget.flaskapp.views.searchableajaxview.SearchableAjaxView
Handle GET /ajax/projects endpoint.
-
_filterhack
(qs, s, args)[source]¶ DataTables 1.10.12 has built-in support for filtering based on a value in a specific column; when this is done, the filter value is set in
columns[N][search][value]
where N is the column number. However, the python datatables package used here only supports the globalsearch[value]
input, not the per-column one.However, the DataTable search is implemented by passing a callable to
table.searchable()
which takes two arguments, the current Query that’s being built, and the user’ssearch[value]
input; this must then return a Query object with the search applied.In python datatables 0.4.9, this code path is triggered on
if callable(self.search_func) and search.get("value", None):
As such, we can “trick” the table to use per-column searching (currently only if global searching is not being used) by examining the per-column search values in the request, and setting the search function to one (this method) that uses those values instead of the global
search[value]
.Parameters: Returns: Query with searching applied
Return type: sqlalchemy.orm.query.Query
-
methods
= {'GET'}¶
-
-
class
biweeklybudget.flaskapp.views.projects.
ProjectsFormHandler
[source]¶ Bases:
biweeklybudget.flaskapp.views.formhandlerview.FormHandlerView
Handle POST /forms/projects
-
methods
= {'POST'}¶
-