构建一个组件,版本 1.5(我知道很快就会被释放,但这是我需要使用的。)
/admin/tables/mycom.php 文件存在问题。 (其中 mycom 是组件名称)
我没有关注这个文件的使用。通过阅读演练,它正在创建一个扩展 JTables 的表类。
现在,我使用的一些数据库列名称中包含“空格”字符。即,“field 1”而不是“field1”(不要问我,这不是我的数据。)
识别这些字段的语法是:
$myfield = null
它说这些引用了 mySQL 表中的字段,但我的字段名称包含空格,这不适用于此语法。
任何帮助理解这个类、它的 php 文件及其用途的信息都将不胜感激。
最佳答案
通过为表创建 JTable 类,大部分用于编辑表的代码都已为您完成。我建议您熟悉 Joomla 库中的 JTable,这样您就知道哪些函数是为您预先编写的,您可以使用和重写。
至于你的数据库列名有空格的问题......老实说,这只是一个坏主意。以下是一些适合您的 MySQL 命名约定最佳实践...
- 始终使用带下划线的小写字母而不是驼峰式命名法。适用于表名和列名。 (first_name 代替 FirstName,address_1 代替 Address1
- 每个表都应该有一个“id”列作为主键,不要将其称为 UserID 或其他任何名称
- 表名称应该是复数(配置文件、支持等)
- 外键应具有相关表的单数名称,后跟下划线 ID。例如:“profile_id”或“support_id”。
如果可以的话,我建议您对 MySQL 进行一些 ALTER TABLE 更新,例如
ALTER TABLE `#__example` CHANGE `Field 1` `field_1` VARCHAR(50) NOT NULL DEFAULT 'empty';
关于php - Joomla mysql table.php 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13502126/