我想在我的Sinatra应用程序中创建一个简单的表,使用DataMapper进行数据库连接,使用以下SQL:
CREATE TABLE `prov_abbrev` (
`abbrev` varchar(2) NOT NULL DEFAULT '',
`province` varchar(256) NOT NULL DEFAULT ''
) DEFAULT CHARSET=utf8;
INSERT INTO `prov_abbrev` (`abbrev`,`province`)
VALUES
('AB','Alberta'),
('BC','British Columbia'),
('MB','Manitoba'),
('NB','New Brunswick'),
('NL','Newfoundland and Labrador'),
('NT','Northwest Territories'),
('NS','Nova Scotia'),
('NU','Nunavut'),
('ON','Ontario'),
('PE','Prince Edward Island'),
('QC','Quebec'),
('SK','Saskatchewan'),
('YT','Yukon');
我想在各种应用程序中将它用作各种其他模型的查找表,因此它会被使用很多。做这个的最好方式是什么?仅设置包含数据的哈希/数组会更有意义吗?表格中的数据是否有任何好处,例如能够使用js从表单中查找值... ...
答案 0 :(得分:1)
我使用Data Mapper Migrations gem:进行向上迁移以创建表,然后在插入行时循环遍历Ruby数组。 (还有一个简单的drop table作为向下迁移)。