Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Propel Schema Converter Bundle Laravel Package

creonit/propel-schema-converter-bundle

Symfony bundle that lets you define Propel database schemas in YAML. Place schema.yml in Resources/config, run Propel build/migration commands, and the bundle generates schema.xml automatically. Supports columns, indexes, unique keys, relations, and behaviors.

View on GitHub
Deep Wiki
Context7

PropelSchemaConverterBundle

Allows use YAML to describe schema

Installation

###1. Install the bundle with composer: composer require creonit/propel-schema-converter-bundle

###2. Registers the bundle in your app/AppKernel.php:

...
public function registerBundles()
{
    $bundles = array(
        ...
        new Creonit\PropelSchemaConverterBundle\CreonitPropelSchemaConverterBundle(),
        ...
    );
...

Usage

Create a file BundleDir/Resources/config/schema.yml and run the command to build the model or migration. File schema.xml will be created automatically.

Example schema.yml

config:
    required: true

database:
  +:
    name: default
    namespace: AppBundle\Model
    package: src.AppBundle.Model
    defaultIdMethod: native

  +behavior:
    - auto_add_pk
    
  table:
    +: {allowPkInsert: true}
    id: {type: INTEGER, size: 10, primaryKey: true, autoIncrement: true}
    column: varchar(64)
    column2: int
    column3: text key(8)
    column4: tinyint uniq
    column5: bool = 1
    column6: - datetime
    +unique:
      - column(32)
    +index: [column2]
    +behavior: 
      - timestampable
      - sortable: {use_scope: true, scope_column: column2}
    
  table2:
    id: int(10) ~pk
    table_id: int
    column: text = Default value
    column2: int
    +foreign-key:
      - table: {local: table_id, foreign: id}
    +behavior: 
      - timestampable
      - sortable: column2
    
  table3: 
    table_id: int pk > table.id
    table2_id: int pk > table2.id(restrict cascade)
    
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
daikazu/eloquent-salesforce-objects
unseen-codes/chat
romalytar/yammi-jobs-monitoring-laravel
kisame76/filament-db-table-state
nqxcode/laravel-lucene-search
dpfx/laravel-livewire-wizards
workos/workos-php-laravel
sofa/laravel-global-scope
nawasara/auth-primitives
adhocrat-io/arkhe-main
make-dev/orca-harpoon
itsemon245/lamet
baks-dev/dashboard
amoifr/pickle-panther-bundle
make-dev/orca
dmstr/symfony-system-resources-bundle
dmstr/symfony-job-queue-bundle
dmstr/openapi-json-schema-bundle
dmstr/keycloak-security-bundle
dmstr/doctrine-audit-log-bundle