2008-12-17 8 views

Répondre

8

Vous pouvez utiliser activerecord dans ruby. En supposant que vous avez installé le lecteur de base de données requis. vous pouvez faire quelque chose de similaire à

require 'activerecord' 

ActiveRecord::Base.establish_connection(
    :adapter => 'your_database_adapter', 
    :host => 'your_host', 
    :username => 'username' 
    :password => 'password', 
    :port => 'port_number' 
) 

pour établir une connexion à la base de données. Puisque vous voulez ajouter des enregistrements à la base de données, je suppose que le schéma est déjà présent. Alors vous faites simplement

class ModelName < ActiveRecord::Base 
    has_many :modelz 
end 

class Modelz < ActiveRecord::Base 
    belongs_to :model_name 
end 

Et vous êtes prêt. (C'est vrai, vous pouvez faire tout ce que vous pouvez faire dans les rails en utilisant l'enregistrement actif une fois que vous avez établi la connexion, même avoir des relations entre les modèles) Vous pouvez faire ce que vous voulez avec l'objet que vous venez de créer. Comme,

ModelName.find(:all) 

@model = ModelName.new 
@model.user_id = rand(10) 
@model.save 

etc etc

Si vous ne disposez pas d'un schéma en place, ne paniquez pas. Vous pouvez le créer en intégrant le code simlar à la suite après avoir établi la connexion à la base de données.

ActiveRecord::Schema.define do 
    create_table :sometable do |table| 
    table.integer :int1, :int2 
    table.string :str1, :str2 
    end 

    create_table :yetanothertable do |table| 
    table.integer :anotherint 
    table.text :sometext 
    end 
end 

Cela devrait fonctionner correctement. Le code donné ici est un exemple et peut ne pas être syntaxiquement parfait. This should also help. Cependant, la définition du schéma se fait de la manière des rails plus anciens.

Questions connexes