diff --git a/cookbook/views/api.py b/cookbook/views/api.py
index 0f1372d2e..4b4c8980c 100644
--- a/cookbook/views/api.py
+++ b/cookbook/views/api.py
@@ -593,6 +593,7 @@ class IngredientViewSet(viewsets.ModelViewSet):
queryset = Ingredient.objects
serializer_class = IngredientSerializer
permission_classes = [CustomIsUser]
+ pagination_class = DefaultPagination
def get_serializer_class(self):
if self.request and self.request.query_params.get('simple', False):
diff --git a/vue/src/apps/IngredientEditorView/IngredientEditorView.vue b/vue/src/apps/IngredientEditorView/IngredientEditorView.vue
index 0fee00aff..35b1c5ba1 100644
--- a/vue/src/apps/IngredientEditorView/IngredientEditorView.vue
+++ b/vue/src/apps/IngredientEditorView/IngredientEditorView.vue
@@ -49,6 +49,9 @@
+
+
@@ -158,6 +164,9 @@ export default {
generic_model: null,
show_food_delete: false,
show_unit_delete: false,
+ current_page: 1,
+ total_object_count: 0,
+ page_size: 50,
}
},
computed: {},
@@ -186,15 +195,16 @@ export default {
} else {
this.loading = true
let apiClient = new ApiApiFactory()
- let params = {'query': {'simple': 1}}
+ let params = {'query': {'simple': 1,}}
if (this.food !== null) {
params.query.food = this.food.id
}
if (this.unit !== null) {
params.query.unit = this.unit.id
}
- apiClient.listIngredients(params).then(result => {
- this.ingredients = result.data
+ apiClient.listIngredients(this.current_page, this.page_size,params).then(result => {
+ this.ingredients = result.data.results
+ this.total_object_count = result.data.count
this.loading = false
}).catch((err) => {
StandardToasts.makeStandardToast(this, StandardToasts.FAIL_FETCH, err)
@@ -202,6 +212,10 @@ export default {
})
}
},
+ pageChange: function (page) {
+ this.current_page = page
+ this.refreshList()
+ },
updateIngredient: function (i) {
let update_list = []
if (i === undefined) {
@@ -235,7 +249,6 @@ export default {
}
},
finishGenericAction: function (e) {
- console.log('PARAMETER ', e)
if (e !== 'cancel') {
if (this.generic_action === this.Actions.DELETE) {
this.ingredients = []
diff --git a/vue/src/utils/openapi/api.ts b/vue/src/utils/openapi/api.ts
index cfaa988c3..0ec1cee4c 100644
--- a/vue/src/utils/openapi/api.ts
+++ b/vue/src/utils/openapi/api.ts
@@ -987,9 +987,40 @@ export interface InlineResponse20010 {
previous?: string | null;
/**
*
- * @type {Array}
+ * @type {Array}
* @memberof InlineResponse20010
*/
+ results?: Array;
+}
+/**
+ *
+ * @export
+ * @interface InlineResponse20011
+ */
+export interface InlineResponse20011 {
+ /**
+ *
+ * @type {number}
+ * @memberof InlineResponse20011
+ */
+ count?: number;
+ /**
+ *
+ * @type {string}
+ * @memberof InlineResponse20011
+ */
+ next?: string | null;
+ /**
+ *
+ * @type {string}
+ * @memberof InlineResponse20011
+ */
+ previous?: string | null;
+ /**
+ *
+ * @type {Array}
+ * @memberof InlineResponse20011
+ */
results?: Array;
}
/**
@@ -1080,10 +1111,10 @@ export interface InlineResponse2004 {
previous?: string | null;
/**
*
- * @type {Array}
+ * @type {Array}
* @memberof InlineResponse2004
*/
- results?: Array;
+ results?: Array;
}
/**
*
@@ -1111,10 +1142,10 @@ export interface InlineResponse2005 {
previous?: string | null;
/**
*
- * @type {Array}
+ * @type {Array}
* @memberof InlineResponse2005
*/
- results?: Array;
+ results?: Array;
}
/**
*
@@ -1142,10 +1173,10 @@ export interface InlineResponse2006 {
previous?: string | null;
/**
*
- * @type {Array}
+ * @type {Array}
* @memberof InlineResponse2006
*/
- results?: Array;
+ results?: Array;
}
/**
*
@@ -1173,10 +1204,10 @@ export interface InlineResponse2007 {
previous?: string | null;
/**
*
- * @type {Array}
+ * @type {Array}
* @memberof InlineResponse2007
*/
- results?: Array;
+ results?: Array;
}
/**
*
@@ -1204,10 +1235,10 @@ export interface InlineResponse2008 {
previous?: string | null;
/**
*
- * @type {Array}
+ * @type {Array}
* @memberof InlineResponse2008
*/
- results?: Array;
+ results?: Array;
}
/**
*
@@ -1235,10 +1266,10 @@ export interface InlineResponse2009 {
previous?: string | null;
/**
*
- * @type {Array}
+ * @type {Array}
* @memberof InlineResponse2009
*/
- results?: Array;
+ results?: Array;
}
/**
*
@@ -5614,10 +5645,12 @@ export const ApiApiAxiosParamCreator = function (configuration?: Configuration)
},
/**
*
+ * @param {number} [page] A page number within the paginated result set.
+ * @param {number} [pageSize] Number of results to return per page.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- listIngredients: async (options: any = {}): Promise => {
+ listIngredients: async (page?: number, pageSize?: number, options: any = {}): Promise => {
const localVarPath = `/api/ingredient/`;
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
@@ -5630,6 +5663,14 @@ export const ApiApiAxiosParamCreator = function (configuration?: Configuration)
const localVarHeaderParameter = {} as any;
const localVarQueryParameter = {} as any;
+ if (page !== undefined) {
+ localVarQueryParameter['page'] = page;
+ }
+
+ if (pageSize !== undefined) {
+ localVarQueryParameter['page_size'] = pageSize;
+ }
+
setSearchParams(localVarUrlObj, localVarQueryParameter, options.query);
@@ -10494,11 +10535,13 @@ export const ApiApiFp = function(configuration?: Configuration) {
},
/**
*
+ * @param {number} [page] A page number within the paginated result set.
+ * @param {number} [pageSize] Number of results to return per page.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- async listIngredients(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> {
- const localVarAxiosArgs = await localVarAxiosParamCreator.listIngredients(options);
+ async listIngredients(page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
+ const localVarAxiosArgs = await localVarAxiosParamCreator.listIngredients(page, pageSize, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
},
/**
@@ -10511,7 +10554,7 @@ export const ApiApiFp = function(configuration?: Configuration) {
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- async listKeywords(query?: string, root?: number, tree?: number, page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
+ async listKeywords(query?: string, root?: number, tree?: number, page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
const localVarAxiosArgs = await localVarAxiosParamCreator.listKeywords(query, root, tree, page, pageSize, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
},
@@ -10585,7 +10628,7 @@ export const ApiApiFp = function(configuration?: Configuration) {
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- async listRecipes(query?: string, keywords?: number, keywordsOr?: number, keywordsAnd?: number, keywordsOrNot?: number, keywordsAndNot?: number, foods?: number, foodsOr?: number, foodsAnd?: number, foodsOrNot?: number, foodsAndNot?: number, units?: number, rating?: number, books?: string, booksOr?: number, booksAnd?: number, booksOrNot?: number, booksAndNot?: number, internal?: string, random?: string, _new?: string, timescooked?: number, cookedon?: string, createdon?: string, updatedon?: string, viewedon?: string, makenow?: string, page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
+ async listRecipes(query?: string, keywords?: number, keywordsOr?: number, keywordsAnd?: number, keywordsOrNot?: number, keywordsAndNot?: number, foods?: number, foodsOr?: number, foodsAnd?: number, foodsOrNot?: number, foodsAndNot?: number, units?: number, rating?: number, books?: string, booksOr?: number, booksAnd?: number, booksOrNot?: number, booksAndNot?: number, internal?: string, random?: string, _new?: string, timescooked?: number, cookedon?: string, createdon?: string, updatedon?: string, viewedon?: string, makenow?: string, page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
const localVarAxiosArgs = await localVarAxiosParamCreator.listRecipes(query, keywords, keywordsOr, keywordsAnd, keywordsOrNot, keywordsAndNot, foods, foodsOr, foodsAnd, foodsOrNot, foodsAndNot, units, rating, books, booksOr, booksAnd, booksOrNot, booksAndNot, internal, random, _new, timescooked, cookedon, createdon, updatedon, viewedon, makenow, page, pageSize, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
},
@@ -10628,7 +10671,7 @@ export const ApiApiFp = function(configuration?: Configuration) {
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- async listSteps(recipe?: number, query?: string, page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
+ async listSteps(recipe?: number, query?: string, page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
const localVarAxiosArgs = await localVarAxiosParamCreator.listSteps(recipe, query, page, pageSize, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
},
@@ -10648,7 +10691,7 @@ export const ApiApiFp = function(configuration?: Configuration) {
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- async listSupermarketCategoryRelations(page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
+ async listSupermarketCategoryRelations(page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
const localVarAxiosArgs = await localVarAxiosParamCreator.listSupermarketCategoryRelations(page, pageSize, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
},
@@ -10677,7 +10720,7 @@ export const ApiApiFp = function(configuration?: Configuration) {
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- async listSyncLogs(page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
+ async listSyncLogs(page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
const localVarAxiosArgs = await localVarAxiosParamCreator.listSyncLogs(page, pageSize, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
},
@@ -10698,7 +10741,7 @@ export const ApiApiFp = function(configuration?: Configuration) {
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- async listUnits(query?: string, page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
+ async listUnits(query?: string, page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
const localVarAxiosArgs = await localVarAxiosParamCreator.listUnits(query, page, pageSize, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
},
@@ -10736,7 +10779,7 @@ export const ApiApiFp = function(configuration?: Configuration) {
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- async listViewLogs(page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
+ async listViewLogs(page?: number, pageSize?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
const localVarAxiosArgs = await localVarAxiosParamCreator.listViewLogs(page, pageSize, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
},
@@ -12319,11 +12362,13 @@ export const ApiApiFactory = function (configuration?: Configuration, basePath?:
},
/**
*
+ * @param {number} [page] A page number within the paginated result set.
+ * @param {number} [pageSize] Number of results to return per page.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- listIngredients(options?: any): AxiosPromise> {
- return localVarFp.listIngredients(options).then((request) => request(axios, basePath));
+ listIngredients(page?: number, pageSize?: number, options?: any): AxiosPromise {
+ return localVarFp.listIngredients(page, pageSize, options).then((request) => request(axios, basePath));
},
/**
*
@@ -12335,7 +12380,7 @@ export const ApiApiFactory = function (configuration?: Configuration, basePath?:
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- listKeywords(query?: string, root?: number, tree?: number, page?: number, pageSize?: number, options?: any): AxiosPromise {
+ listKeywords(query?: string, root?: number, tree?: number, page?: number, pageSize?: number, options?: any): AxiosPromise {
return localVarFp.listKeywords(query, root, tree, page, pageSize, options).then((request) => request(axios, basePath));
},
/**
@@ -12404,7 +12449,7 @@ export const ApiApiFactory = function (configuration?: Configuration, basePath?:
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- listRecipes(query?: string, keywords?: number, keywordsOr?: number, keywordsAnd?: number, keywordsOrNot?: number, keywordsAndNot?: number, foods?: number, foodsOr?: number, foodsAnd?: number, foodsOrNot?: number, foodsAndNot?: number, units?: number, rating?: number, books?: string, booksOr?: number, booksAnd?: number, booksOrNot?: number, booksAndNot?: number, internal?: string, random?: string, _new?: string, timescooked?: number, cookedon?: string, createdon?: string, updatedon?: string, viewedon?: string, makenow?: string, page?: number, pageSize?: number, options?: any): AxiosPromise {
+ listRecipes(query?: string, keywords?: number, keywordsOr?: number, keywordsAnd?: number, keywordsOrNot?: number, keywordsAndNot?: number, foods?: number, foodsOr?: number, foodsAnd?: number, foodsOrNot?: number, foodsAndNot?: number, units?: number, rating?: number, books?: string, booksOr?: number, booksAnd?: number, booksOrNot?: number, booksAndNot?: number, internal?: string, random?: string, _new?: string, timescooked?: number, cookedon?: string, createdon?: string, updatedon?: string, viewedon?: string, makenow?: string, page?: number, pageSize?: number, options?: any): AxiosPromise {
return localVarFp.listRecipes(query, keywords, keywordsOr, keywordsAnd, keywordsOrNot, keywordsAndNot, foods, foodsOr, foodsAnd, foodsOrNot, foodsAndNot, units, rating, books, booksOr, booksAnd, booksOrNot, booksAndNot, internal, random, _new, timescooked, cookedon, createdon, updatedon, viewedon, makenow, page, pageSize, options).then((request) => request(axios, basePath));
},
/**
@@ -12443,7 +12488,7 @@ export const ApiApiFactory = function (configuration?: Configuration, basePath?:
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- listSteps(recipe?: number, query?: string, page?: number, pageSize?: number, options?: any): AxiosPromise {
+ listSteps(recipe?: number, query?: string, page?: number, pageSize?: number, options?: any): AxiosPromise {
return localVarFp.listSteps(recipe, query, page, pageSize, options).then((request) => request(axios, basePath));
},
/**
@@ -12461,7 +12506,7 @@ export const ApiApiFactory = function (configuration?: Configuration, basePath?:
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- listSupermarketCategoryRelations(page?: number, pageSize?: number, options?: any): AxiosPromise {
+ listSupermarketCategoryRelations(page?: number, pageSize?: number, options?: any): AxiosPromise {
return localVarFp.listSupermarketCategoryRelations(page, pageSize, options).then((request) => request(axios, basePath));
},
/**
@@ -12487,7 +12532,7 @@ export const ApiApiFactory = function (configuration?: Configuration, basePath?:
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- listSyncLogs(page?: number, pageSize?: number, options?: any): AxiosPromise {
+ listSyncLogs(page?: number, pageSize?: number, options?: any): AxiosPromise {
return localVarFp.listSyncLogs(page, pageSize, options).then((request) => request(axios, basePath));
},
/**
@@ -12506,7 +12551,7 @@ export const ApiApiFactory = function (configuration?: Configuration, basePath?:
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- listUnits(query?: string, page?: number, pageSize?: number, options?: any): AxiosPromise {
+ listUnits(query?: string, page?: number, pageSize?: number, options?: any): AxiosPromise {
return localVarFp.listUnits(query, page, pageSize, options).then((request) => request(axios, basePath));
},
/**
@@ -12540,7 +12585,7 @@ export const ApiApiFactory = function (configuration?: Configuration, basePath?:
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- listViewLogs(page?: number, pageSize?: number, options?: any): AxiosPromise {
+ listViewLogs(page?: number, pageSize?: number, options?: any): AxiosPromise {
return localVarFp.listViewLogs(page, pageSize, options).then((request) => request(axios, basePath));
},
/**
@@ -14156,12 +14201,14 @@ export class ApiApi extends BaseAPI {
/**
*
+ * @param {number} [page] A page number within the paginated result set.
+ * @param {number} [pageSize] Number of results to return per page.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof ApiApi
*/
- public listIngredients(options?: any) {
- return ApiApiFp(this.configuration).listIngredients(options).then((request) => request(this.axios, this.basePath));
+ public listIngredients(page?: number, pageSize?: number, options?: any) {
+ return ApiApiFp(this.configuration).listIngredients(page, pageSize, options).then((request) => request(this.axios, this.basePath));
}
/**