Download the PHP package craue/config-bundle without Composer

On this page you can find all versions of the php package craue/config-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package config-bundle

Information

Tests Coverage Status

CraueConfigBundle manages configuration settings stored in the database and makes them accessible via a service in your Symfony project. These settings are similar to those defined in parameters.yml but can be modified at runtime, e.g. by an admin user.

Installation

Get the bundle

Let Composer download and install the bundle by running

in a shell.

Enable the bundle

If you don't use Symfony Flex, register the bundle manually:

Create the table

Preferably you do this by calling

or

or however you like.

Add the route to manage settings (optional)

You can either import the default routing configuration

...or add your own to have full control over the URL pattern.

Some CSS is needed to render the form correctly. Install the assets in your project:

Usage

Defining settings

This bundle does not provide functionality to create new settings because this would make no sense at runtime. Those settings will be used in your application and thus code needs to be written for that. This means that you have to create new settings in the database table craue_config_setting yourself, e.g. using a migration.

Managing settings' values

If you added the route described above you can manage the values of all defined settings in a simple form. By default, you can access that form by browsing to /settings/modify. But you probably want to limit access to this form in your security configuration.

Reading and writing settings

For accessing settings, the bundle provides the service Craue\ConfigBundle\Util\Config. To use it directly in a controller, either add an autowired type-hinted argument to the action...

...or let your controller extend Symfony\Bundle\FrameworkBundle\Controller\AbstractController and make the service alias craue_config available by defining getSubscribedServices:

The service defines the following methods:

Keep in mind that each setting has to be present, or an exception will be thrown.

Usage in Twig templates

The Twig extension in this bundle supports reading settings directly in your template.

Enable caching (optional)

To reduce the number of database queries, you can set up a cache for settings. First, you have to choose which cache implementation you'd like to use. Currently, there are adapters available for:

Refer to the documentation of each implementation for details and read on in the corresponding section below. When done, CraueConfigBundle will automatically cache settings (using the built-in craue_config_cache_adapter service).

Keep in mind to clear the cache (if needed) after modifying settings outside of your app (e.g. by Doctrine migrations):

Cache implementation: DoctrineCacheBundle Set the parameter `craue_config.cache_adapter.class` appropriately and configure a so-called cache provider with the alias `craue_config_cache_provider`:
Cache implementation: Symfony Cache component Set the parameter `craue_config.cache_adapter.class` appropriately and configure a so-called cache pool with the service id `craue_config_cache_provider`:

Customization

Redirect to a different page after submitting the built-in form

If you've enabled the build-in form, you can define where to redirect on successfully saving the changes by setting the target route name:

Rendering of settings in sections

If you want to render settings in a group (called section here), you'll have to assign those settings a common section name (in the database). Optionally, you can influence the order of these sections:

Settings without a section will be rendered at first. Sections without explicit ordering are rendered at last.

Translation

You can add translations for all settings (and sections) to be shown in the form by adding them to translation files with the CraueConfigBundle domain, e.g.

Using a custom entity for settings

The custom entity has to provide a mapping for the field value. The class BaseSetting defines this field, but no mapping for it. This allows easy overriding, including the data type. In the following example, the value field will be mapped to a text column, which will in turn render the built-in form fields as textarea.

So create the entity and its appropriate mapping:

And make the bundle aware of it:


All versions of config-bundle with dependencies

PHP Build Version
Package Version
Requires php Version ^7.3|^8
doctrine/doctrine-bundle Version ^1.6.12|^2
psr/simple-cache Version ^1|^2|^3
symfony/cache Version ~4.4|~5.4|^6.3
symfony/config Version ~4.4|~5.4|^6.3
symfony/dependency-injection Version ~4.4|~5.4|^6.3
symfony/form Version ~4.4|~5.4|^6.3
symfony/framework-bundle Version ~4.4|~5.4|^6.3
symfony/http-foundation Version ~4.4|~5.4|^6.3
symfony/http-kernel Version ~4.4|~5.4|^6.3
symfony/options-resolver Version ~4.4|~5.4|^6.3
symfony/validator Version ~4.4|~5.4|^6.3
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package craue/config-bundle contains the following files

Loading the files please wait ....