01-Code ứng dụng chấm điểm game-TopScoreGame sử dụng Flutter và Laravel
Rảnh rỗi ngồi ngâm cứu Flutter và share kiến thức nghiên cứu cho mọi người
Chuẩn bị database.
Tạo 2 bảng
Bảng 1 : Tên là sys_loai_website_lay_diem để chứa loại website cần lấy.
Ở đây mình sẽ crawler 3 website chấm điếm game là:
1.www.videogamer.com
2.www.metacritic.com
3.opencritic.com
Code mysql:
-- Dumping structure for table score_game.sys_loai_website_lay_diem DROP TABLE IF EXISTS `sys_loai_website_lay_diem`; CREATE TABLE IF NOT EXISTS `sys_loai_website_lay_diem` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(100) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8; -- Dumping data for table score_game.sys_loai_website_lay_diem: ~2 rows (approximately) DELETE FROM `sys_loai_website_lay_diem`; /*!40000 ALTER TABLE `sys_loai_website_lay_diem` DISABLE KEYS */; INSERT INTO `sys_loai_website_lay_diem` (`id`, `name`) VALUES (1, 'www.videogamer.com'), (2, 'www.metacritic.com'), (3, 'opencritic.com');
Bảng 2 : Tên là sys_score_game để chứa điểm game
CREATE TABLE `sys_score_game` ( `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `loai_website_id` INT(11) NOT NULL, `title` VARCHAR(250) NULL DEFAULT NULL, `image` VARCHAR(250) NULL DEFAULT NULL, `description` TEXT NULL, `score` INT(11) NULL DEFAULT NULL, `rank_game` INT(11) NULL DEFAULT NULL, `year` INT(11) NULL DEFAULT NULL, `release_date` DATE NULL DEFAULT NULL, `created_at` DATETIME NULL DEFAULT NULL, `updated_at` DATETIME NULL DEFAULT NULL, PRIMARY KEY (`id`) ) COLLATE='utf8_general_ci' ENGINE=InnoDB
Trong đó :
score:điểm game
rank_game:thứ hạng của game
year:năm ra mắt
release_date:ngày tháng năm ra mắt
Tạo file model ScoreGame.php
<?php namespace App\Models; use Illuminate\Database\Eloquent\Model; class ScoreGame extends Model { protected $table = 'sys_score_game'; //public $timestamps = false; }