我目前有一个内置于WordPress的网站,已注册超过1000个客户.我是否能够在ruby代码中从WordPress数据库中提取信息
需要对我的客户无缝的方式?无需再次注册?
注意: 此代码应动态创建活动记录类或模型,而不是手动定义活动记录模型
小智 6
没有Gem你可以通过Ruby脚本本身实现这一点
我假设你有rails应用程序,你可以创建rake任务来从WordPress数据库中获取数据
步骤1:
value = {host: "192.*.*.*", username: '', password: '', database: ''}
ActiveRecord::Base.establish_connection(
adapter: 'mysql2',
encoding: 'utf8',
pool: 5,
host: value[:host],
username: value[:username],
password: value[:password],
database: value[:database]
)
Run Code Online (Sandbox Code Playgroud)
第2步:
然后定义需要获取的数据库表
database_tables = {:"database_name" => ["SaveContactForm7_1", "SaveContactForm7_2","SaveContactForm7_3","SaveContactForm7_4"]}
Run Code Online (Sandbox Code Playgroud)
第3步:
tables = database_tables[key]
Key refers to the database name
Run Code Online (Sandbox Code Playgroud)
第4步:
tables.each do |table|
MODEL_CLASS= table
Object.const_set(MODEL_CLASS, Class.new(ActiveRecord::Base) { def self.name() MODEL_CLASS end;def self.table_name() MODEL_CLASS end })
records = MODEL_CLASS.constantize.all
results = []
records.each do |record|
set = {}
columns = MODEL_CLASS.constantize.column_names
p columns
columns.each do |column|
p record.send(column.to_sym)
p set[:mobile] = record.send(column.to_sym)
end
results << set
p record
end
p "Task done...."
p results
end
Run Code Online (Sandbox Code Playgroud)
因此,您可以看到哈希数组.您可以插入到您的活动记录模型中
请随意提出您的建议
归档时间: |
|
查看次数: |
42 次 |
最近记录: |