amadeuse/table-mvc 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

amadeuse/table-mvc

Composer 安装命令:

composer create-project amadeuse/table-mvc

包简介

Table MVC პროექტი - რეაქტიული ცხრილი AJAX-ით

README 文档

README

AJAX-იანი რეაქტიული ცხრილი PHP პროექტებისთვის.

მახასიათებლები

  • ✅ AJAX მონაცემის ჩატვირთვა
  • ✅ Sorting (აღმავალი/დაღმავალი)
  • ✅ Pagination კონტროლი
  • ✅ ძიება (search)
  • ✅ სვეტების ხილვადობის კონტროლი
  • ✅ Responsive დიზაინი
  • ✅ localStorage - პარამეტრების შენახვა
  • ✅ Bootstrap 4/5 თავსებადი
  • ✅ ქართული ენის მხარდაჭერა

ინსტალაცია Composer-ით

composer require yourname/table-mvc

სწრაფი დაწყება

1. კლასების იმპორტი

use TableMvc\Table;
use TableMvc\TableModel;
use TableMvc\TableHelper;

2. კონფიგურაციის შექმნა

$config = [
    'table' => 'users',
    'fields' => [
        'id' => 'ID',
        'name' => 'სახელი',
        'email' => 'ელ. მისამართი'
    ],
    'sortable' => ['id', 'name'],
    'apiUrl' => '/api/table'
];

3. Table ინსტანსის შექმნა

define('BASE_URL', '/');
$table = new Table('users', $config);

4. HTML-ში ჩართვა

<!DOCTYPE html>
<html>
<head>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/css/bootstrap.min.css">
    <?php echo $table->includeCss(); ?>
</head>
<body>
    <div class="container mt-4">
        <h1>მომხმარებლები</h1>
        <?php echo $table->render(); ?>
    </div>
    
    <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js"></script>
    <?php echo $table->includeJs(); ?>
</body>
</html>

Table კლასის მეთოდები

__construct($tableId, $config = [])

ინიციალიზაციონი table ID-თი და კონფიგურაციით.

render($tableName = null)

ცხრილის HTML-ის გენერირება.

includeCss()

CSS ფაილის include tag-ი.

includeJs()

JS ფაილის include tag და აპლიკაციის კონფიგურაცია.

Fluent API

$table->addField('new_col', 'ახალი სვეტი')
      ->addSortable('new_col')
      ->setApiUrl('/api/custom')
      ->setConfig('searchPlaceholder', 'მოძებნე...');

TableModel - ბაზის გამოწვევა

$pdo = new PDO('mysql:host=localhost;dbname=mydb', 'user', 'pass');
$model = new TableModel($pdo, 'users', ['id', 'name', 'email'], ['id', 'name']);

$result = $model->getData(
    page: 1,
    search: '',
    sortField: 'name',
    sortDir: 'ASC'
);

TableHelper - დამხმარე ფუნქციები

// კონფიგურაციის ვალიდაცია
$errors = TableHelper::validateConfig($config);

// Sanitize
$safeName = TableHelper::sanitizeTableName($_GET['table']);

// მნიშვნელობის ფორმატირება
echo TableHelper::formatValue($date, 'date');
echo TableHelper::formatValue($price, 'currency');

// Pagination
$pagination = TableHelper::calculatePagination($total, $page, $perPage);

API Endpoint

Table მოდულს მოსახლეობის განახლებული მონაცემისთვის სჭირდება API endpoint.

მაგალითი public/api/table.php:

<?php
use TableMvc\TableController;

$pdo = new PDO(...);
$controller = new TableController($pdo);
$controller->fetch();

კასტომიზაცია

CSS

პაკეტი მოცემულ assets/css/table.css ფაილს აშავებს. თქვენი BASE_URL სწორად დაყენებული უნდა იყოს.

JS

assets/js/table.js თქვენს დაკონფიგურირებულ API endpoint-თან ეკომუნიკაციას ახდენს.

მაგალითები

იხილეთ examples/ დირექტორია გაფართოებული მაგალითებისთვის:

  • TableWithExport - CSV ექსპორტი
  • TableWithEditing - Inline რედაქტირება
  • TableWithFilters - ფილტრების კონტროლი

ლიცენზია

MIT

მხარდაჭერა

დაკითხვებისთვის ან პრობლემებისთვის გთხოვთ უფროსი issue გახსნათ GitHub-ზე. "# table-mvc"

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 2
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-12-18

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固