Implementar la función para insertar datos
Reemplazar el store() método en el archivo MovieController.php, ubicado en el directorio app/Http/Controllers con el siguiente código:
public function store(Request $request) { $data = $request->all(); $movie = new Movie(); $movie->fill($data); $movie->save(); }
Agregue una ruta API que llame a la función del controlador
Genere un archivo de ruta API ejecutando el siguiente comando:
php artisan install:api
Tip
Omite este paso si estás usando Laravel 10.x porque el archivo que genera el comando ya existe.
Importe el controlador y agregue una ruta API que llame al método store() en el archivo routes/api.php:
use App\Http\Controllers\MovieController; // ... Route::resource('movies', MovieController::class)->only([ 'store' ]);
Actualizar los campos del modelo
Actualice el modelo Movie en el directorio app/Models para especificar los campos que el método fill() rellena como se muestra en el siguiente código:
class Movie extends Model { protected $connection = 'mongodb'; protected $fillable = ['title', 'year', 'runtime', 'imdb', 'plot']; }
Publicar una solicitud a la API
Crea un archivo llamado movie.json e introduce los siguientes datos:
{ "title": "The Laravel MongoDB Quick Start", "year": 2024, "runtime": 15, "imdb": { "rating": 9.5, "votes": 1 }, "plot": "This movie entry was created by running through the Laravel MongoDB Quick Start tutorial." }
Envíe la carga JSON al punto final como una solicitud POST ejecutando el siguiente comando en su shell:
curl -H "Content-Type: application/json" --data @movie.json http://localhost:8000/api/movies
Ver los datos
Abierto Accede a http://: /browse_movies127.0.0.1 8000 en tu navegador web para ver la información de la película que enviaste. La película insertada aparece en la parte superior de los resultados.
Nota
Si tiene problemas en este paso, envíe sus comentarios mediante el Rate this page pestaña en el lado derecho o inferior derecho de esta página.
Puede encontrar soporte para preguntas generales mediante la etiqueta Stack Overflow de MongoDB o la comunidad de Reddit de MongoDB.