اذهب إلى المحتوى

يوسف احمد9

الأعضاء
  • المساهمات

    30
  • تاريخ الانضمام

  • تاريخ آخر زيارة

كل منشورات العضو يوسف احمد9

  1. الفكرة كالتالى اخى الكريم سنقوم بعمل جدول خاص بالمواضيع : CREATE TABLE subjects ( id bigint UNSIGNED AUTO_INCREMENT PRIMARY KEY, title VARCHAR(30) NOT NULL, description VARCHAR(30) NOT NULL, user_id bigint UNSIGNED, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ) ونقوم بعمل جدول يسمى المحادثات ويكون كالتالى : CREATE TABLE conversations ( id bigint UNSIGNED AUTO_INCREMENT PRIMARY KEY, subject_id bigint UNSIGNED, tile VARCHAR(190) NOT NULL, user_id bigint UNSIGNED, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ) بحيث ان تكون المحادثة مربوطة بالموضوع وال user_id هنا يكون اليوزر الذى يريد ان يتحدث مع صاحب الموضوع بحيث اذا اراد اى مستخدم التحدث مع صاحب الموضوع نقوم بعمل محادثة له فى جدول ال conversations ومجرد عنوان ابتدائى للمحادثة ومن ثم نقوم بعمل جدول نقوم بتخزين الرسائل فية ويكون بالشكل التالى : CREATE TABLE messages ( id bigint UNSIGNED AUTO_INCREMENT PRIMARY KEY, conversation_id bigint UNSIGNED, msg text NOT NULL, user_id bigint UNSIGNED, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ) subjects table : --------------------- id | title | user_id --------------------- 1 | title | 5 conversations table : -------------------------------------------------------------- id | subject_id | user_id | title --------------------------------------------------------------- 1 | 1 | 1 | مرحبا لدى عدة اسئله على هذا الموضوع --------------------------------------------------------------- 2 | 1 | 2 | مرحبا اخى الكريم هل لديك وقت كافى messages table : ----------------------------------------------------------------- id | conversation_id | user_id | title ----------------------------------------------------------------- 1 | 1 | 1 | كم احتاج وقت حتى اتعلم البرمجة؟ ----------------------------------------------------------------- 2 | 1 | 5 | تحتاج خمس شهور واخيرا اذا اردت ان تسترجع الشات لست يمكن تنفيذ هذه الكويرى : SELECT conversations.* FROM `conversations` JOIN subjects on subjects.id = conversations.subject_id WHERE subjects.user_id = 5 وشكرا .
  2. المشكله اخى الكريم ان الكود مكتوب داخل الكلاس بصورة مباشرة وتلك الطريقة لا تعمل يجب ان نقوم بكتابة الاكواد فى الكلاس عن طريق ال methods او بمعنى اخر functions فانت لدى اكثر من حل : اولا ممكن تقوم بعمل كنترولر وتكتب هذا الكود فى اى فنكشن كالمثال التالى : namespace App\Http\Controllers; use Illuminate\Http\Request; /** * Class UserController * @package App\Http\Controllers */ class UserController extends Controller { public function index() { $owner = new Role(); $owner->name = 'owner'; $owner->display_name = 'Project Owner'; // optional $owner->description = 'User is the owner of a given project'; // optional $owner->save(); $admin = new Role(); $admin->name = 'admin'; $admin->display_name = 'User Administrator'; // optional $admin->description = 'User is allowed to manage and edit other users'; // optional $admin->save(); } } الحل الاخر وهذا الأفضل انه تقوم بعمل seed لل roles والبيرميشن الخاصة بك عن طريق Laravel seeder نقوم بعمل seeder عن طريق تنفيذ السطر التالى php artisan make:seeder PermissionSeeder ويكون الكود فى هذا الملف كالتالى : <?php namespace Database\Seeders; use Illuminate\Database\Seeder; class PermissionSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { $createPost = new Permission(); $createPost->name = 'create-post'; $createPost->display_name = 'Create Posts'; // optional $createPost->description = 'create new blog posts'; // optional $createPost->save(); $editUser = new Permission(); $editUser->name = 'edit-user'; $editUser->display_name = 'Edit Users'; // optional $editUser->description = 'edit existing users'; // optional $editUser->save(); } } طبعا قم بأضافة كل ال permissions الموجودة بالسيستم لديك عن طريق ال seeder ملحوظة : لاتنسا ان تقوم بعمل امبورت لكلاس ال Permission وال Role واخيرا نقوم بتنفيذ هذا ال seeder عن طريق : //seeder لتنفيذ كل ملفات ال php artisan db:seed //معين seeder لتنفيذ php artisan db:seed --class=PermissionSeeder
  3. يوجد اخى الكريم نظام تشغيل يسمى Hackintosh وهوا نسخه معدلة من نظام الماك وتستطيع ان تقوم بتحميلها على الاجهزة العادية اى لا يوجد حاجة ان يكون معك جهاز ماك
  4. المشكله ان Heroku's filesystem سربعة الزوال ولذلك لدينا اكثر من حل اسهلهم ان نقوم بعمل راوت لكى يقوم بارجاع الصور لنا من فولدر ال storage كالمثال التالى : Route::get('images/{filename}', function ($filename) { $path = storage_path() . '/img/' . $filename; if(!File::exists($path)) abort(404); $file = File::get($path); $type = File::mimeType($path); $response = Response::make($file, 200); $response->header("Content-Type", $type); return $response; }); حل اخر وهوا ان نتستخدم Amazon S3 وهذا طبعا حل ليس مجانى ايضا حل اخر وهوا ان تقوم برفع الصور فى فولدر ال public ولكن هذا الحل غير مفضل لاغراض الحماية
  5. import pandas as pd df = pd.DataFrame({'c1': [10, 11, 12], 'c2': [100, 110, 120]}) for index, row in df.iterrows(): print(row['c1'], row['c2'])
×
×
  • أضف...