Download the PHP package vildanbina/laravel-model-json without Composer

On this page you can find all versions of the php package vildanbina/laravel-model-json. 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 laravel-model-json

Latest Stable Version Total Downloads Latest Unstable Version License PHP Version Require

Introduction

The Laravel Model JSON package allows you to export data from a specific model in the form of a JSON file. It is based on the php artisan command and is easy to use.

Installation

To install this package, use the following command:

Usage

Export

The command to export data from a model is php artisan model:export {model}, where {model} is the class name of the model you wish to export. After running this command, the data will be automatically saved in the storage/app folder.

For example, to export data from the User model, you would run the following command:

If your model is located in a different folder, you can specify the exact location, like so:

Options

Choose your path to save

This package also has several options that allow you to customize the export functionality. For example, you can use the --path=public option to save the JSON data in a different folder. Here's an example:

Filename

By default, the filename of the JSON data is "Model-Timestamp", but you can also specify a custom filename using the --filename=data option. For example:

Except Fields from export

You can also exclude certain columns from the export by using the --except-fields option. This is useful if you only want to export certain data from the model. For example:

Without timestamps

To exclude the created_at, updated_at, and deleted_at columns from the export, use the --without-timestamps option. For example:

Without global scopes

You can remove registered global scopes from the export with the --without-global-scopes option. For example:

With hidden

By default, only visible fields are included in the export. To also include all hidden fields in the export, use the --with-hidden option. For example:

This will also apply to any included relation(s) if used in combination with the --with-relationships option.

Select only specific fields

If a model has a large number of columns and you only want to export a subset of them, you can use the --only-fields option. This allows you to specify which columns you want to include in the export. For example:

Forget data

You can forget data from the export by using the dot notation, accepting wildcards using asterisks. For example:

This can be useful if you include relations with the --with-relationships option and you would like to remove chaperone()'d relations from the nested data.

The --forget-data option supports one or more keys, comma separated.

Apply a specific scope to the query

If you wish to apply a scope to the model query because you wish to exclude certain records, you can use the --scope={scope} option. This allows you to specify a scope for the records you want to include in the export. For example:

On your User model you would have the following method:

The --scope option also supports one or more arguments to be passed to the scope, comma separated. For example:

On your User model you would have the following method:

Relationships

You can now export models along with their specified relationships using the new option --with-relationships={relations}. {relations} are the names of the relationships and can be separated by + symbol if you want to attach more than one relationship.

For example, if you want to export a Product model along with its Category relationship, you can use the command:

If you want to export a Product model along with both its Category and Supplier relationships, you can use the command:

Additionally, you can choose to only export specific columns of the relationship by using the syntax {relationship_name}:{columns_to_export}.

For example, if you want to export a Product model along with its Category relationship and only export the id and name columns of the Category, you can use the command:

\ If you want to save JSON in a file as a beautified version, you can use the --beautify option or its shorthand -b. For example:

By default, it will be exported to an inline JSON.


Import

The model:import command allows you to import data from a JSON file and store it in your database.

For example, to import data for the User model, you would run the following command:

Parameters

Example:

This command will store all the data found in the JSON file in the database.

Except Fields from importing

You can exclude specific columns by using the --except-fields option, separated by commas, ex:

You can also exclude timestamps by using the --without-timestamps option.

Select only specific fields to import

If you only want to store specific fields, you can use the --only-fields option, separated by commas. Ex:

Forget data

You can forget data from the import by using the dot notation, accepting wildcards using asterisks. For example:

The --forget-data option supports one or more keys, comma separated.

Update existing records

You can update existing records in the database instead of creating duplicates by using the --update-when-exists option, ex:

If you want to group the updates based on a different column, you can use the --update-keys option. The records will be updated based on the matching existing records.

Note: The --update-when-exists option must be present in order for the update feature to be enabled.

Relationships

In addition to importing models from JSON, this package also allows you to import relationships between models. Currently supported relationship types are:

You can import models along with their specified relationships using the new option --with-relationships={relations}. {relations} are the names of the relationships and can be separated by + symbol if you want to attach more than one relationship.

For example, if you want to import a Category model along with its Product relationship, you can use the command:

If you want to import a Category model along with both its Product and User relationships, you can use the command:

Additionally, you can choose to only import specific columns of the relationship by using the syntax {relationship_name}:{columns_to_import}.

For example, if you want to import a Category model along with its Product relationship and only import the id and name columns of the Product, you can use the command:

Note: In addition to the assignment that will be done in the above examples for importing a product to a category with relationships, Category will also be updated with the attributes found in the JSON.


Conclusion

The Laravel Model JSON package is a useful tool for exporting data from a specific model in a JSON format. It offers various options to customize the export process and make it more convenient for your needs. Give it a try and see how it can help you in your project.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please e-mail [email protected] to report any security vulnerabilities instead of the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.


All versions of laravel-model-json with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
spatie/laravel-package-tools Version ^1.13
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 vildanbina/laravel-model-json contains the following files

Loading the files please wait ....