MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

wo man Funktionen in Codeigniter Mongodb einfügt

Ich bin mir nicht sicher, warum Ihre Klasse nicht funktioniert, aber um zu verstehen, wie MongoDB und Codeigniter zusammenarbeiten, werfen Sie einen Blick auf diesen Antwort .

Aus der Antwort um Ihre Frage zu beantworten, wie Sie eine Verbindung zu MongoDB herstellen:

config/mongo.php

$config['mongo_server'] = null;
$config['mongo_dbname'] = 'mydb';

libraries/Mongo.php

class CI_Mongo extends Mongo
{
    var $db;

    function CI_Mongo()
    {   
        // Fetch CodeIgniter instance
        $ci = get_instance();
        // Load Mongo configuration file
        $ci->load->config('mongo');

        // Fetch Mongo server and database configuration
        $server = $ci->config->item('mongo_server');
        $dbname = $ci->config->item('mongo_dbname');

        // Initialise Mongo
        if ($server)
        {
            parent::__construct($server);
        }
        else
        {
            parent::__construct();
        }
        $this->db = $this->$dbname;
    }
}

Und ein Beispiel-Controller

controllers/posts.php

class Posts extends Controller
{
    function Posts()
    {
        parent::Controller();
    }

    function index()
    {
        $posts = $this->mongo->db->posts->find();

        foreach ($posts as $id => $post)
        {
            var_dump($id);
            var_dump($post);
        }
    }

    function create()
    {
        $post = array('title' => 'Test post');
        $this->mongo->db->posts->insert($post);
        var_dump($post);
    }
}

Aus der Frage wie oben antworten:

Ich hoffe, dies hilft Ihnen dabei, Ihr Codeigniter-Projekt (MongoDB) zum Laufen zu bringen