بعد از صفحه بندی query نرم افزار دارای دو تایم شده است

با درود خدمت شما . من صفحه بندی رو با راهنمایی دیگر برنامه نویسا در انجمن الکسیر درست کردم . جالب بود که مشکلاتی بی خودی داشت و در آخر کار کرد ولی برام جالب شده که چرا کوآری بنده دارای تو تایم شده انگار دوباره کار انجام می ده

تصویر :

و همینطور به صورت متنی :

[debug] QUERY OK db=5.3ms
SELECT count('*') FROM (SELECT c0."id" AS "id", c0."title" AS "title", c0."status" AS "status", c0."language" AS "language", c0."group_acl" AS "group_acl", c0."description" AS "description", c0."seo_alias_link" AS "seo_alias_link", c0."seo_words" AS "seo_words", c0."seo_description" AS "seo_description", c0."seo_language" AS "seo_language", c0."seo_language_link" AS "seo_language_link", c0."pic_x1_link" AS "pic_x1_link", c0."pic_x2_link" AS "pic_x2_link", c0."pic_x3_link" AS "pic_x3_link", c0."inserted_at" AS "inserted_at", c0."updated_at" AS "updated_at" FROM "cms_post_category" AS c0) AS s0 []
[debug] QUERY OK source="cms_post_category" db=3.9ms
SELECT c0."title", c0."status", c0."language", c0."group_acl", c0."description", c0."seo_alias_link", c0."seo_words", c0."seo_description", c0."seo_language", c0."seo_language_link", c0."pic_x1_link", c0."pic_x2_link", c0."pic_x3_link" FROM "cms_post_category" AS c0 ORDER BY c0."inserted_at" LIMIT $1 OFFSET $2 [2, 0]

دوباره دیباگ شده انگار . چرا این رفتار رو داره آیا این تاثیر توی سرعت و کارایی کد من نمی زاره ؟

اینم کد بنده هست :

	def load_all_category_info(["admin"], pagenumber) do
		query = from u in PostCategory,
					order_by: u.inserted_at,
          select: %{
						title: u.title,
						status: u.status,
						language: u.language,
						group_acl: u.group_acl,
						description: u.description,
						seo_alias_link: u.seo_alias_link,
						seo_words: u.seo_words,
						seo_description: u.seo_description,
						seo_language: u.seo_language,
						seo_language_link: u.seo_language_link,
						pic_x1_link: u.pic_x1_link,
						pic_x2_link: u.pic_x2_link,
						pic_x3_link: u.pic_x3_link,
					}
		Repo.paginate(query, %{page: pagenumber})
	end

لینک مشکلات در صفحه بندی در الکسیر :

به نظر شما چرا اینطور هست ؟

من از


استفاده می کنم فکر کنم باگ داره

1 پسندیده

مشکل چیه دقیقن چرا query count هست ؟

1 پسندیده

سام عزیز نمی دونم چرا دوبار داره کوآری می زنه . آخرین نسخشم نصب کردم

من چیزی رو دست نزدم کل کدم هم بالا خدمت شما قرار دادم همین کد ساده دوباره کوآری می ره .

شاید یک بار اطلاعات می یاره و یک بار شاید می شماره کل جدول چقدر توشه ؟

یک query count یکی query معمولی باهم فرق میکنه برا pagination
همیشه count نیاز داری

1 پسندیده

اینجوری سام عزیز مصرف دیتابیس بیشتر نمی شه ؟ ما صفحه بندی می کنیم که به دیتابیس فشار نیاد و سرعت لود پایین بره الان با صفحه بندی یک بار کل دیتابیس داریم می شماریم یک بار هم داریم لود می کنیم !!

یکی این لینک رو قرار داده

خیر این بهتره تا ۱۰۰۰ رکورد باهم بگیری
count تعداد داده هارو میگیره که بدونه چند صفحه داری

2 پسندیده

دو تایم یعنی چی دقیقا؟

در کل بنظر مشکلی وجود نداره، count یک agreegate هست که برای این کار نیازش داری

1 پسندیده

یک سوال . آیا من درست می گم ؟

زمانی که در count کردن طول می کشد تا از دیتابیس جواب بگیرد فکر کنم بر اساس تستی که در دیتابیس خودم زدم خیلی کمتر از زمان پاسخگویی لود اطلاعات از بانک اطلاعاتی هست

بله همینطوره

1 پسندیده