Cruddiy:無程式碼Bootstrap CRUD生成器

allway2發表於2020-11-15

因此,您擁有一個MySQL資料庫和一個應該能夠執行一些標準資料庫操作的使用者,例如建立,讀取,更新刪除資料庫記錄。沒有什麼花哨。
而且,這是非技術使用者,因此您不想讓他們訪問phpMyAdmin,這太困難了。或者更不用說給他們命令列訪問許可權了。所以,你需要一些簡單的資料庫形式,建立在你的MySQL資料庫之上,但你也不想handcode同一PHP CRUD頁面重新

現在,您可以使用Cruddiy自己自己執行CRUD)並以零編碼快速生成乾淨的CRUD頁面。

您可能已經看過一千遍這樣的頁面。而且,如果您擁有MySQL資料庫,則只需單擊幾下就可以自行建立它們。

這樣的頁面無需編寫任何程式碼即可生成。具有適當的標題,分頁,操作(檢視/編輯/刪除)和排序。

上面是舊版的Bootstrap 3外觀。這是Bootstrap 4的新外觀:

帶有Bootstrap 4的Cruddiy和搜尋

我已經厭倦了為一些簡單的資料庫表單一遍又一遍地程式設計相同的頁面。因此,我決定以經典的yakshaving方式將其自動化,並構建了一個生成PHP CRUD頁面的生成

Cruddiy是一個無程式碼的PHP生成器,它將為您的MySQL表生成PHP Bootstrap CRUD頁面

Cruddiy的輸出是一個/ app資料夾,其中包含您需要的所有內容。您可以重新命名和移動你想要這個資料夾中的任何地方,甚至刪除Cruddiy當你完成(或執行幾次更加讓您的應用只是你的方式喜歡它)。Cruddiy僅用於生成/ app資料夾。/ app資料夾就是您的使用者將使用的資料夾。

為什麼Cruddiy,工具xyz會做同樣的事情!

大多數MVC框架(例如Symfony,Django或Yii2)當然也能夠為您生成CRUD頁面。我已經用完了所有這些。但是通常,您最終至少要擁有80 MB的程式碼(不要開玩笑),並且只需要幾個PHP頁面就可以部署和維護各種依賴項!這使我誤解了。
,當然還有很多其他的PHP發電機介面汙物左右,但他們沒有自由報,或者更往往不是建立在頂部其他大框架:所以他們有同樣的問題。或者他們只是缺少其他東西。因此,當找不到適合我需要的人時,我決定製造Cruddiy。

粗魯的目標和特徵

  • 簡單
    • 沒有依賴關係,只有純PHP。
    • 用PHP編寫,並用PHP輸出。當生成器正確執行時,生成的應用程式將正確執行。
  • 清潔
    • 只需生成所需的內容,別無其他。
    • 如果從上面的內容來看不是很明顯,則它生成的應用程式應該很小。千位元組而不是兆位元組。
  • 隨身攜帶
    • Cruddiy在一個/ app資料夾中生成所有內容。您可以將該資料夾移動到任何地方。生成所需的內容後,您不需要Cruddiy。
  • 載入程式
    • Bootstrap看起來很乾淨,並且相對簡單小。我使用Bootstrap 3是因為我喜歡並且知道它比4。

常問問題

為什麼要使用PHP?

  • 它或恨它:但是PHP無處不在。您可以在大多數Web伺服器上下載Cruddiy,一切順利。wget zip- >解壓縮->檢查Web伺服器許可權(chmod)->瀏覽到瀏覽器中的解壓縮資料夾,然後按照說明進行操作
  • Cruddiy當然是一種模板引擎。它根據模板刪除程式碼。而且,如果PHP是任何東西,實際上預設情況下它本身就是模板引擎。因此,對於這種事情,這是一種相當不錯的語言。
  • Cruddiy僅適用於MySQL(目前):MySQL和PHP當然是豆莢中的兩個豌豆。

Cruddiy不遵循MVC範例!

是的,如果需要,可以在別處查詢。這不是框架。

您的程式碼充滿了骯髒的駭客

當然,生成器會進行大量的陣列處理和髒字串替換,但是Cruddiy 生成的PHP頁面非常乾淨。完成頁面生成後,您可以刪除Cruddiy。它完全構建了一個獨立的可移植應用程式,該應用程式幾乎可以在任何裝有PHP的Web伺服器上執行(即大多數)。

您生成的程式碼不完整

目前缺少的是對資料庫插入/更新進行錯誤值檢查(所有欄位均為必填欄位,並且不檢查欄位型別:整數與日期等)。這些將引發一般性錯誤或根本不執行任何操作。我可能會對此進行改進,但是對於大多數用例(請參見上文),這應該不是問題。生成的程式碼確實使用準備好的語句,並且不應受到SQLi的攻擊。但是,嘿,放下我行,如果你找到的東西!

接下來的功能?

我可能會新增以下內容:

  • 暗模式
  • Bootstrap 4主題已 根據20200803修復
  • 匯出為CSV或XLS(使用者可能更經常希望這樣做)
  • 重新排列列順序
  • 搜尋記錄(在頁面頂部) 每20200722年固定
  • 使用者註冊(帶有使用者名稱和密碼的簡單表:.htaccess現在可以使用)
  • 定義表關係(用於級聯刪除等)
  • 更具體的欄位型別(ENUM =下拉選單BOOLEAN =核取方塊等)
  • 更多更好的輸入驗證
  • 捕獲更多資料庫錯誤

克魯迪在行動。


還發表在Medium上

相關文章