Code Monkey home page Code Monkey logo

akeneo-table-attribute-bundle's Introduction

Flagbit Table Attribute for Akeneo PIM

Adds the new attribute type Table for Akeneo products.

Key FeaturesInstallationCompatibilityDevelopmentContributing

Key Features

Provides a table as attribute type where you can define a set of columns of different types and validation rules.

Column Types

  • Text
  • Number (Integer or Decimal)
  • Simple select
  • Simple select from URL

Import/Export

The extension supports the standard Akeneo product import/export, so you don't need to create any special import/export profile for table information.

All product information related to attributes of type table will be imported/exported as JSON.

Installation

Simply install the package with the following command:

composer require flagbit/table-attribute-bundle

Enable the bundle

Enable the bundle in the kernel:

<?php
// config/bundles.php

return [
    // ...
    Flagbit\Bundle\TableAttributeBundle\FlagbitTableAttributeBundle::class => ['all' => true],
];

Configuration

Add mapping_overrides in a new config/packages/table.yml file or an existing one:

akeneo_storage_utils:
    mapping_overrides:
        -
            original: Akeneo\Pim\Structure\Component\Model\AttributeOption
            override: Flagbit\Bundle\TableAttributeBundle\Entity\AttributeOption

Import the routing

Now that you have activated and configured the bundle, you need to import the routing files.

# config/routes/flagbit_table_attribute.yml
flagbit_table_attribute:
    resource: "@FlagbitTableAttributeBundle/Resources/config/routing.yml"

Clear the cache:

php bin/console --env=prod cache:clear

Update the database schema:

php bin/console --env=prod doctrine:schema:update --force

Build and install the new front-end dependencies (new icon, etc.)

make cache assets css javascript-prod javascript-extensions

In case you're using Doctrine migrations, you have to create a new migration class

php bin/console --env=prod doctrine:migration:diff

and migrate the schema updates:

php bin/console --env=prod doctrine:migrations:migrate

Compatibility

This extension supports the latest Akeneo PIM CE/EE stable versions:

  • 6.0
  • 5.0
  • 4.0
  • 3.2 (LTS)
  • 3.0 (LTS)
  • 2.3 (LTS)

Development

Running Test-Suits

The TableAttributeBundle is covered with tests and every change and addition has also to be covered with unit or/and integration tests. It uses two testing suits: PHPSpec and PHPUnit.

To run the tests you have to change to this project's root directory and run the following commands in your console:

vendor/bin/phpunit
vendor/bin/phpspec run

Coding style

TableAttributeBundle uses the PSR-2 coding style and can be checked with Codesniffer.

vendor/bin/phpcs --standard=PSR2 --extensions=php ./src

Contributing

Contributions are always welcome! Please have a look at the contribution guidelines first.

License

The TableAttributeBundle is licensed under the MIT License - see the LICENSE file for details.

Supported with ❤ by Flagbit GmbH & Co. KG

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.