كل الأنشطة
- الساعة الماضية
-
رنا القرني اشترك بالأكاديمية
-
Hazem Hossam2 اشترك بالأكاديمية
-
شكرا لك @محمد_عاطف في الواقع أرى أن الحل الأنسب هو تعديل الواجهة الخلفية ليصبح بهذه الطريقة export const verifyAccount = asyncHandler(async(req, res) => { const { userId, token } = req.params // Check if user exist const user = await User.findById(userId) if (!user) { return res.status(400).json({ message: "Invalid Verification Link" }) } const verificationToken = await VerificationToken.findOne({ userId: user._id, token: token, }) if (!verificationToken) { if (user.isAccountVerified) { return res.status(200).json({ message: "Your Account is Already Verified!" }); } return res.status(400).json({ message: "Invalid Link" }); } user.isAccountVerified = true await user.save() await VerificationToken.deleteMany({ userId: user._id }); res.status(200).json({ message: "Your Account is Verified!" }) }) ففي حالتي أنا بالرغم user.isAccountVerified و !verificationToken فيظهر مكون الخطأ والسبب يعود لـ tanstack query مثلما تفضلتم بالشرح لذلك إعتمدت على تغيير منطق الواجهة الخلفية والمحافظة على الواجهة الأمامية كما هي والسبب هو التوافق مع TanStack Query والمحافظة على frontend بسيط يعتمد على TanStack Query (isLoading, isError, data) بالإضافة إلى ضمان تجربة متكاملة بين التطوير واإنتاج. شكرا جزيلا مجددا
- 12 اجابة
-
- 1
-
-
Hydraulic Insight اشترك بالأكاديمية
-
Faisal Alowais اشترك بالأكاديمية
-
نرمين العريقي اشترك بالأكاديمية
- اليوم
-
إذا نظرت إلى ال console ستجد أنه يتم طباعة وتنفيذ ال API الخاص بالتحقق مرتين وهذا هو سبب المشكلة الرئيسية . ففي أول مرة يتم تنفيذ المكون يتم إرسال التحقق مما يسبب نجاح العملية ولكن مع الإرسال الثاني يظهر الخطأ لأن بالفعل المستخدم تم التحقق من حسابه وتم حذف رمز ال token من قاعدة البيانات. وهذه المشكلة بسبب انك تعمل في وضع React الصارم (React.StrictMode) أثناء التطوير. حيث في وضع التطوير (Development Mode) يقوم React.StrictMode بعرض كل مكون مرتين (mount -> unmount -> mount) بشكل متعمد والهدف من ذلك هو مساعدتك في اكتشاف الأخطاء والآثار الجانبية (Side Effects) غير المرغوب فيها في الكود الخاص بك. ولذلك يوجد عدة حلول لديك : أولا يمكنك حذف الوضع الصارم من ملف frontend\src\main.jsx . ثانيا يمكنك حاليا عدم حذف ال token من قاعدة البيانات وذلك في وضع التطوير أما في وضع النشر production يمكنك حذفه . ثالثا يمكنك إستخدام useRef هكذا : import React, { useEffect, useRef } from "react"; import { Link, useParams } from "react-router-dom"; import { useVerifyEmail } from "../lib/queries/auth.queries"; import { AiOutlineCheckCircle, AiOutlineWarning } from "react-icons/ai"; import Spinner from "../components/loaders/Spinner"; const VerifyEmail = () => { const { userId, token } = useParams(); const { mutate, data, isError, isPending } = useVerifyEmail(); const effectRan = useRef(false); useEffect(() => { if (effectRan.current === false) { if (userId && token) { mutate({ userId, token }); } } return () => { effectRan.current = true; }; }, []); if (!effectRan.current) { return <Spinner />; } return ( <section className="flex items-center justify-center min-h-[calc(100vh-2rem)] px-4"> <div className="w-full max-w-md bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-700 rounded-2xl shadow-md p-6 text-center transition-all duration-300"> {isError ? ( <> <AiOutlineWarning className="text-red-500 dark:text-red-400 text-6xl mx-auto animate-pulse mb-4" /> <h1 className="text-xl font-semibold text-gray-800 dark:text-white"> Error Verifying Email </h1> <p className="text-sm text-gray-600 dark:text-gray-300 mt-2"> Please check your verification link or request a new one. </p> </> ) : ( <> <AiOutlineCheckCircle className="text-teal-600 dark:text-teal-400 text-6xl mx-auto animate-bounce mb-4" /> <h1 className="text-xl md:text-2xl font-semibold text-gray-800 dark:text-white mb-2"> {data?.message || "Email Verified Successfully!"} </h1> <Link to="/login" className="inline-block bg-teal-600 hover:bg-teal-700 text-white font-medium py-2 px-6 rounded-full transition-colors duration-300" > Login </Link> </> )} </div> </section> ); }; export default VerifyEmail;
- 12 اجابة
-
- 1
-
-
Mariam Abdullah2 اشترك بالأكاديمية
-
Jana Samir2 اشترك بالأكاديمية
-
الإجابة هى يجب أن نقوم بتطبيق ال Scaling على العمود (w) فقط. فالهدف الأساسي من عملية ال Scaling مثل Standardization أو Normalization هو جعل جميع أعمدة البيانات Features في نطاق متقارب للقيم وهذا يمنع أي عمود من التأثير بشكل مفرط على أداء النموذج لمجرد أن قيمه العددية أكبر من قيم الأعمدة الأخرى. وبما أنكِ ذكرتِ أن جميع الأعمدة تم تطبيعها بالفعل ما عدا العمود (w) فهذا يعني أنها بالفعل في نطاق متقارب. لذلك: لا حاجة لإعادة المعالجة وتطبيق الـ Scaling مرة أخرى على الأعمدة التي تم تطبيعها بالفعل فهي خطوة غير ضرورية وقد تؤدي إلى نتائج غير متوقعة أو تفسد التوزيع الأصلي للبيانات الذي نتج عن التطبيع الأول. وبتطبيق الـ Scaling على العمود (w) وحده فإنكِ تجعلينه متناسق مع بقية الأعمدة وهذا هو الهدف الأساسي من العملية.
- 2 اجابة
-
- 1
-
-
هذا لأنك يجب أن تقوم بتنفيذ أمر تحويل الملفات إلى js كما وضحت لك في البداية . يمكنك تنفيذ الأمر التالي وهذا الأمر سيقوم بمشاهدة التعديلات وتحويلها مباشرة : tsc -b -w
-
عندما يكون لدينا مجموعة بيانات بعدة أعمدة مطبعة مسبقا وعمود واحد w غير مطبع يجب تطبيق ال Scaling على العمود w فقط وليس على جميع الأعمدة. والسبب هو أن إعادة تطبيق ال Scaling على الأعمدة المطبعة مسبقا سيؤدي إلى تشويه توزيعها الحالي وقد يخل بالعلاقات الإحصائية المطلوبة، بينما تطبيقه على العمود w فقط سيجعل جميع الأعمدة في نفس المقياس المطلوب للنموذج. الممارسة الصحيحة هي تطبيق ال StandardScaler أو MinMaxScaler على العمود w منفردا أو استخدام ColumnTransformer في scikit-learn لتحديد الأعمدة المراد معالجتها بدقة.
- 2 اجابة
-
- 1
-
-
نحليت مشكلة لكن متصفح لا يقبل اي تعديلات كيف يمكن حل ذالك يعني اي اضفة ضفتها لا يظهر
-
Rol Ian بدأ بمتابعة استفسار عن تطبيق Scaling
-
إذا كان لدي مجموعة بيانات تحوي عدة أعمدة وكانت كلها تم تطبيعها عدا عمود واحد (w) هل عندما أطبق Scaling أطبق على جميع الأعمدة أو العمود (w) فقط؟
- 2 اجابة
-
- 2
-
-
لاحظ انك في ال session storage وليس local storage يرجى اتباع الخطوات في الصورة السابقة
-
-
طارق حيران اشترك بالأكاديمية
-
المشروع يعمل المشكلة لديك في التخزين المحلي يجب حذفه كما أخبرتك . يجب الذهاب إلى تبويبة application في ادوات المطور وحذفه من خلال الزر التالي :
-
بعد تثبيت الامر tsc -b اصبح امر اسوء حيث صفحة مفضلة اصبحت صفحة بيضاء وايضاً مكون scroll لايعمل قبل رفعت مشروع لكن رجعت لتعديله اصبح متصفح لا يقبل اي تعديلات اظن مشكلة من Cashed ان كانت مشكلة كذالك كيف يمكنني حذفه لحفظ تغييرات جديدة amazon-store.zip
-
ما هي الأوامر التي تقوم بها لتشغيل المشروع ؟ حاليا المشكلة نعم لا تظهر الصور ولكن لو قمت بتنفيذ أمر tsc -b ستجد أن المشكلة قد تم حلها ولكن يجب أن يتم حذف التخزين المحلي أولا . لهذا يجب تنفيذ الأمر التالي هكذا لتحويل ملفات tsx بعد تعديلها إلى ملفات js: tsc -b
-
Zen Eddin Allaham بدأ بمتابعة الصور لا تظهر في صفحة المفضلة
-
توجد مشكلة في صفحةFavorite.tsx حيث منتجات المفضلة لا يتم عرض الصور ومع اني متأكد اني مررت لها صور في interface وحذف تخزين محلي ورجعت حفظتو ومشكلة مستمرة amazon-store.zip
-
محمد السليمان2 اشترك بالأكاديمية
-
Zafar Khan اشترك بالأكاديمية
- البارحة
-
Mustafa Mahmoud7 بدأ بمتابعة هذا حلي للأسئلة هل هو صحيح ؟
-
ستجدأسفل فيديو الدرس في نهاية الصفحة صندوق تعليقات كما هنا، أرجو طرح الأسئلة أسفل الدرس وليس هنا في قسم أسئلة البرمجة حيث نطرح الأسئلة العامة الغير متعلقة بمحتوى الدورة أو الدرس، وذلك لمساعدتك بشكل أفضل.
-
عبد القادر الشريف بدأ بمتابعة هذا حلي للأسئلة هل هو صحيح ؟
-
فكرة جميلة جدًا وانا كنت رفعت بوست مثل هذا من مده ولاكن انا مشترك في تطوير واجهات المستخدم وتطوير التطبيقات باستخدام جافاسكريبت
- 2 اجابة
-
- 1
-
-
السلام عليكم ,اذا في اشخاص مشتركين في دورة الذكاء الاصطناعي او تطوير التطبيقات ببايثون ممكن نكون مجتمع حتى نتفاعل ونتابع كل ماهو جديد ونتشجع سويا
-
الف شكراا جدا لحضرتك جزاك الله كل خير
-
وعليكم السلام ورحمة الله وبركاته. إن NumPy هي مكتبة أساسية للتعامل مع المصفوفات والعمليات الرياضية عالية الكفاءة وهي مكتوبة في الأساس بلغة C ولهذا حساباتها أسرع بكثير من الحلقات العادية في بايثون حيث تقدم أدوات كثيرة جاهزة مثل: عمليات الجبر الخطي (Linear Algebra). والتحويلات الفورييه. والدوال الإحصائية. ةالتعامل مع الأعداد الكبيرة في الحجم. أى يمكننا أن نقول أنها أداة رياضية تعطيك واجهة في لغة بايثون سهلة لكنها تعمل بكود مكتبة بلغى C في الخلفية. أما Numba فهي مكتبة مختلفة ووظيفتها تسريع كود بايثون نفسه عن طريق التحويل إلى كود آلة (JIT Compilation) . وأنت تقوم بكتابة دالة عادية وتضيف decorator هكذا مثلا : from numba import jit @jit(nopython=True) def add(x, y): return x + y والنتيجة أن الكود يتحول عند التشغيل إلى لغة منخفضة المستوى (Assembly) ويصبح قريب في الأداء من لغة C . وهو مفيد عندما تكتب حلقات for أو عمليات متكررة معقدة لا يمكن أن تكتبها كلها بدوال NumPy الجاهزة. إذا يمكننا التخليص بأن NumPy هي مكتبة رياضية جاهزة تعطيك دوال وأدوات أما Numba فهو مسرع يحول كود بايثون البطيء إلى كود سريع
- 2 اجابة
-
- 1
-
-
السلام عليكم ما الفرق بين مكتبة NumPy ومكتبة Numba في لغة بايثون؟
- 2 اجابة
-
- 1
-
-
السلام عليكم في الدورة الخاصة بتحليل البيانات أظننا لم نتعرض لل Big Data ؟ فما هي ال Big Data , DI DWH ؟ وما هو PySpark ؟ وكيفية إدارة Big data management؟ وما هو PLSQL ؟ وما هو DataWarehouse ,ETL ؟ وهل هناك مصادر مجانية بإماكنك أن ترشوحها لي لمعرفة ال Big data وإن كان في أكاديمية حسوب ففي أي مسار ؟ وجزاكم الله خيرا