استفاده از ری اکت یا انگولار در فونیکس

درود خدمت شما دوستان.
من در جوملا خیلی زیاد تلاش کردم که بتونم از انگولار در سایت استفاده کنم ( منظور روتر انگولار هست ) نتوانستم . همه چیز خوب بود تا زمانی که صفحه رفرش می شد و دو روتر تداخل پیدا می کرد
یعنی روتر جوملا با روتر انگولار در صورتی که من نیاز به روتر انگولار داشتم آخر به این نتیجه رسیدم جوملا فقط به عنوان سازنده و کنترل کننده json باید استفاده بشه و کل صفحات سایتم جاهایی که نیاز به انگولار داشت رو با انگولار بزنم بدون دخالت روتر جوملا و مشکلم حل شد

می خواستم بدونم در فونیکس هم به این صورته ؟ به عنوان مثال فقط فونیکس برای api استفاده می شه و json می سازه و کنترل می کنه انگولار فقط درخواست هارو می فرسته و می گیره ؟

با تشکر

سلام، فينيكس يك فريمورك mvc مثل ريلز، از اونجايى كه angular هم يك فريمورك mvc هست يكمى كنار هم قراردانشون اين سوالات رو ايجاد ميكنه اما همونطور كه گفتيد ميشه از rails يا phoenix يا هر چيز مشابهى براى تامين JSON api استفاده كرد.

1 پسندیده

با درود خدمت شما و تشکر از پاسختون . به عنوان مثل همین انجمن ایران ریلز که از https://emberjs.com/ قدرت گرفته برای روتینگ و همینطور دیگر موارد .
یعنی کل فورنت اندش باید با emberjs یا انگولار زده بشه و فقط برای گرفتن داده ها به واسطه json از فونیکس یا ریلز کمک بگیره ؟
صحبت من تا اینجا درسته ؟

چون تقریبا من در پروژه خودم باید سعی کنم حتی از نظر ظاهری مثل همین اسکریپت نصب شده ( Discourse ) امکانات قرار بدم مخصوصا بدون رفرش صفحه

سلام، پاسخ به سوال شما در مورد ايران آن ريلزو ميسپارم به @lxsameer

اما در مورد اينكه آيا همه چيز بايد ember يا angular باشه بايد بگم الزامى نيست، بايد ببينيد نياز شما چىو ديكته ميكنه، مثلا در مورد angular2 من زمانى ازش استفاده ميكنم كه بخوام single page application بسازم چون براى اين كار ساخته شده.
من به react و angular بيشتر از بقيه علاقه دارم پس علاقه و تجربه هم بى اثر نيست.

1 پسندیده

درود شما منظور منو کمی بد متوجه شدید.
چه انگولار باشه چه vue باشه چه هرچی .

آیا وقتی شما می خواهید به عنوان مثال از { انگولار } استفاده کنید . دیگه از روتر خود فونیکس استفاده نمی کنید . فونیکس به عنوان وب سرویس داخلی برای اپ انگولار شما می باشد ؟
منظور درخواست و ارسال json هست.

چون بر روی یک cms که mvc بود مشکل بسیار زیادی در تداخل دو روتر وجود داشت
#تداخل روتر انگولار با روتر cms مورد نظر ( به عنوان مثال )

بله میشه. اما قبل از انجامش فکر کن ببین میصرفه برات یا نه

1 پسندیده

منظور شما رو متوجه شدم و جوابم به بخشى از سوال شما بود، منظورم اين بود كه ببينيد كلا انتخاب درست باشه.
حالا من يك سوال ميپرسم، اصلا كار روتر در فينيكس چيه؟ و كار روتر در angular چيه؟
واقعا پرسيدم كه جواب بدين

1 پسندیده

درود .
من در تمام سایتم یعنی پروژه ای که دارم به وسیله روتر فونیکس مسیر دهی می شود . به عنوان مثال /blog , /sup و … این مسیر دهی به واسطه همون مسیر دهی که در خود فونیکس هست در فایل روتر انجام شد ولی در انجمن سایت که باید درست بشه بر اساس نیاز باید بدون رفرش صفحات جا به جا بشه مثل اپلیکیشن های تک صفحه ای .
از ثبت نام کاربر گرفته تا ارسال پست و یا جواب دادن به پست که نیازمند هستم با انگولار انجام بدم به چند دلیل :

۱. به وسیله انگولار می تونم ارائه بهتری از جاوااسکریپت رو روی قسمت هایی سایتم داشته باشم حتی تنظیمات گرافیکی
۲. می تونم اچ تی ام ال ام رو با انگولار شرطی کنم و بر اساس ری اکشن کاربر تغییر کند
۳. می تونم آبزرو بکارم وسط سایت و یک سری اطلاعات رو همزمان ذخیره کنم
۴. مهم ترینش می تونم انتقال صفحه به صفحه را بدون رفرش از کامپوننت به کامپوننت انگولار انجام بدم

این دلایل سوال من در این زمینه هست

خب بياييد براى يك لحظه سه چيزو از اين بحث جدا كنيم، اول ريفرش كردن و دوم نوع كار مورد نظر و سوم فريمورك هاى فرانت اند.
خيلى كلى اگر بخوايم كار روتر رو توضيح بديم چى ميشه؟
مثلا فكر كنيد كه در ميدان api يك اپليكيشن كه با فينيكس پياده شده، يك resource به نام posts قرار داره كه پايانه اى براى نمايش دادن يك post با فرمت json در اختيار مصرف كننده api قرار ميده.
در اينجا منظور از post يك ركرد در جدول posts است كه در پايانه مورد نظر بوسيله id قابل جستجوست.

سوال:
وظيفه روتر اينجا چيه؟ و چرخه استاندارد درخواست و پاسخ چى ميشه؟

1 پسندیده

البته نمی دونم هدف شما چی هست از سوال . البته من به شخصه دنبال یاد گیری هستم .
ولی اینجا id منظور شماره یا شناسه مطلب به پرووایدر که در یک فانکشن هست داده می شه . از یک جنبه id برای لود از دیتابیس و از یک طرف هم نمایش تک مطلب به صورت اختصاصی هست (get) هست. در صورتی هم از نوع POST باشه که می ریم سمت انتقال از یک فرم به یک فانکشن یا یک فایل مثلا ساختن یک رکورد در دیتابیس

@toomaj عزیز بنده از بلد نبودن یا پاسخ سوالی رو ندونستند اصلا نمی ترسم . من بعد از چندین سال داشتن انجمن های بزرگ تازه یک ساله فهمیدم بی سواد ترین فردم در اینترنت :smile: بخاطر همین ازتون خواهش می کنم اگر موردی هست که فکر می کنید در من دچار مشکله مستقیم بگید . تا من درستش کنم :blush: کمی پیچ بدیمش زیاد جالب نیست. به شخصه آماده یادگیری هستم

منظورم از id دقيقا رديف id در جدول posts بود، و سوالم كاملا هدفمنده، چون ميدونم ميتونيد به خوبى و سادگى پاسخ بدين، اىن سوال رو پرسيدم كه با استفاده از پاسخ شما بحثمون رو قدم به قدم جلو ببريم،
من بازم وضيفه route رو در جواب شما پيدا نكردم، روش من بيشتر اتكا به هوش جمعيه كه باعث ميشه هر دو كلى چيز از هم ياد بگيريم

1 پسندیده

بنده در جایگاه شاگردی هستم . چیزی برای آموزش مخصوصا در مبحث برنامه نویسی هایی مثل الکسیر و روبی ندارم . چون به تازگی شروع کردم . و بیشتر کارم روی swift و php هست .
لطفا شما بفرمایید چیزی که از روتر در نظر دارید به عنوان وظیفه به چه صورت هست شاید بنده به کل در اشتباه باشم و یا اینکه توجه بهش نکردم تو ذهنم نیست بهتون جواب بدم

به عنوان مثال روتر در جوملا که من خیلی کار کردم :

۱. به صورت خودکار برای تمام پوشه هایی که در پوشه components وجود دارد درست می شود ( هر کدام لینک دریافت می کنند )
۲. روتر به عنوان مسیر دهنده تمام این کامپوننت هاست
۳. روتر نمایش دهنده و اتصال دهنده مدل کنترلر و ویو می باشد

باز چیزی نظرم نمی رسه با مواردی که در پست بالا خدمتتون گفتم

اگر چیزی هست بفرمایید با تشکر از شما

بيايد جوملا رو هم بزاريم كنار فعلا،
در زمينه بحث ما router به بخشى از سيستم گفته ميشه كه درخواست كننده رو با اتكا به الگوى هاى مشخصى از url ها و با شيوه pattern matching به متد ها يا همون اكشنهاى موجود توى كنترلرها هدايت ميكنه.
بقيشه ميسپرم به شما،
چون فينكس بر اساس ريلز ساخته شده لينك زير رو با دقت مطالعه كنيد، بعد دباره اگه خواستين ادامه ميديم.

http://guides.rubyonrails.org/routing.html
و اين براى فينكس
http://www.phoenixframework.org/docs/routing

1 پسندیده

به نظر من قبل از همه اینها باید این سوال رو پرسید که آیا واقعا ارزش داره که از این ابزار ها استفاده بشه یا نه؟ برای مثال @shahryarjb جان می تونی نکات مثبت و منفی استفاده از این ها رو لیست کنی ؟

2 پسندیده

اخه ايشون تجربه خوبى توى وب دارند و با توجه به اينكه فكر كردم ممكنه اين بحث براى ديگران هم مفيد باشه به اين سمت كشيده شدم. اما خب شروع كردن از نقاط ضعف و قوت اين ابزار خيلى هم خوب به نظر مياد. نظر خود شما چيه؟

1 پسندیده

من سوال رو در موازات سوال شما پرسیدم :slight_smile:

2 پسندیده

درود خدمت دو دوست عزیز که بزرگواری می کنند من رو راهنمایی می کند اصل مطلب فقط یادگیری بنده هست به کمک شما که یک چیز اشتباهی رو شروع نکنم . و از دو دوست عزیز صمیمانه تشکر می کنم امید وارم در زندگیتون موفق باشید

در مورد مزایا برای به این شرح هست :

من به شخصه وقتی انگولار شروع کردم و به وسیله انگولار و تایپو اسکریپتش اومدم کد زدم از شر جاوا اسکریپت ها و جی کو آری هایی که تو یک مروگر کار می کنه و تو یکی دیگر خلاص شدم برای من انگولار مثل یک سازماندهی کننده هست .

به عنوان مثال وقتی کاربر اینجا پست می زنه صفحه رفرش نمی شه سریع اطلاعات ذخیره شده و کاربر می تونه ما بقی مطالب رو مطالعه کنه یا وقتی شما برای دکمه لایک می یایید مثلا یک آژاکس می نویسید یا انگولار یا vue و هرچیزی می زنید نیاز نیست صفحه کامل رفرش بشه کاربر ادامه این مطلب رو می خونه . برای خود من بیشتر رابط کاربری مهمه که کاربر رفرش نکنه یعنی برای کوچیک ترین چیز مثل لایک یک صفحه ریلود نشه

ولی به شخصه فکر می کنم اگر ازش استفاده نکنم امنیت بهتری خواهم داشت و تداخل کمتری می گیرم و از تمام امکانات فریم ورکم به راحتی استفاده می کنم

این ها مزایا و مشکلاتی هست که من با سواد کممم متوجه اون شدم .

#خلاصه :
از نظر کاربری و گرافیک برای من بسیار زیبا سازی می گردد و ریلود صفحه را کاهش می دهد و ساخت فرم های داینامیک را برای من بسیار ساده می کند و من را از شر آژاکس خلاص می کند ولی از نظر ثبات سیستم مطمئنم برای من چالش زیادی را ایجاد می کند.
شاید از روترش استفاده نکنم ولی از باقی مواردش مخصوصا شرط های انگولار در html فکر کنم ختما باید استفاده کنم

به نظر شما آیا این مقدار ارزش داره یا خیر؟ البته دوستان گفتند به علت بالا بودن سرعت فونیکس کم پیش می یاد از روتر از انگولار استفاده کنند

درود و ممنون از شما بخاطر اشتراک لینک من قبلا زمانی که کمی ریلز کار می کردم مطالعه کردم اینو و همینطور الان هم به صورت روزنامه وار دیدم . ویدیویی که برای فونیکس دیدم هم همین موضوعات رو اشاره کرده که بالا هم خدمتتون یک ریز اشاره کردم البته چون الان دارم فونیکس کار می کنم به صورت هست ولی خوب قبلا در php چنین حالتی نداشتم

اگر ادامه بحث رو مدیریت کنید چندتا چیز جدید یاد بگیریم ممنون می شم

شهریار جان
بنده عرض کردم بخاطر سرعت فینکس از انگولار کلا میتونی استفاده نکنی ولی اگه میخواهی از انگولار استفاده کنی از راتر هردو باید استفاده کنی چون روتر فینکس مسولیتش کاملا با راتر انگولارفرق میکنه وقتی ریلزیا فینکس و به صورت api استفاده میکنی راتر کارش اینه که نسبت به درخواست http به کنترل درست ببره که دراخر json بر میگردونه این کارها همه در سرور انجام میشه
راتر انگولارنسبت به url که در برازر هست controller درست ب میداره و درخواست به فینکس میده که json از سرور بگیره وقتی json گرفت دیگه به سرور کاری نداره
نکته اینه که این راتر ها به هم هیچ ارتباطی ندارد یکی در سرور هست و یکی در کلاینت
میشه به url هایی رفت که توسط انگولار چندین درخواست ازفینکس میکنند یا اصلا درخواست نمیکنند چون داده ها را دارند

1 پسندیده

درود و ممنون دوست عزیز @samdvr همیشه به بنده لطف دارید

ببنید من اصلا انگولار برای سرعتش نمی خوام فقط برای این دیزاینش بیشتر نیاز دارم

از شما نظر می خوام :
شما اگر بخواهید در همین فونیکس دکمه لایک درست کنید بدون ریلود صفحه لایک بخوره چی استفاده می کنید؟
و اگر همین انجمن فکر کنید در فونیکس طرف مطلب ارسال یا ویرایش کرد بدون ریلود اگر بخواد نمایش بده از چی استفاده می کنید ؟

شاید من به کل دارم بد فکر می کنم و بی خود دارم یک کتابخونه رو می یارم تو پروژ ام و سنگین می کنمش

در مورد api هم فرمودید کامل جوابمو گرفتم نظر خودمم روش بود می خواستم تاییده دوستان رو هم دریافت کنم

با تشکر

1 پسندیده