hedronium\Jables\Runner::foreigns PHP Метод

foreigns() публичный Метод

public foreigns ( )
    public function foreigns()
    {
        $builder = $this->db->getSchemaBuilder();
        $created_foreigns = [];
        foreach ($this->foreigns as $table => $foreigns) {
            $table_name = $table;
            $created_foreigns[$table] = [];
            $builder->table($table, function ($table) use($foreigns, $table_name, $builder, &$created_foreigns) {
                foreach ($foreigns as $field => $foreign) {
                    list($foreign_table, $foreign_field) = explode('.', $foreign);
                    if ($builder->hasTable($foreign_table)) {
                        $created_foreigns[$table_name][] = $table_name . '_' . $field . '_foreign';
                        $table->foreign($field)->references($foreign_field)->on($foreign_table);
                    }
                }
            });
        }
        $table = $this->app['config']['jables.table'];
        $this->db->table($table)->insert(['type' => 'foreign', 'data' => json_encode($created_foreigns)]);
    }