Implementar la función para insertar datos
Reemplace 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
Genera un archivo de ruta API ejecutando el siguiente comando:
php artisan install:api
Tip
Omitir este paso si usas Laravel 10.x porque el archivo que genera el comando ya existe.
Importa el controlador y añade una ruta de 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' ]);
Actualiza los campos del modelo
Actualiza 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 en 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ía la carga útil JSON al endpoint como una solicitud POST ejecutando el siguiente comando en tu 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 enfrenta problemas en este paso, envíe feedback utilizando 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.