Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Quốc gia và trạng thái thả xuống động Laravel

Đây là cách thực hiện thả xuống động trong Laravel:

Tuyên bố từ chối trách nhiệm:Tôi đã không thử nghiệm điều này nhưng nó sẽ hoạt động. Hãy bình luận và tôi sẽ cập nhật 🙏

app / Http / Controllers / HomeController.php

<?php

namespace App\Http\Controllers;

use App\{Country, State};

class HomeController extends Controller
{
    public function index()
    {
        return view('home', [
            'countries' => Country::all(),
            'states' => State::all(),
        ]);
    }
}

resources / views / home.blade.php

<select name="country">
    @foreach ($countries as $country)
        <option value="{{ $country->id }}">{{ $country->name }}</option>
    @endforeach
</select>

<select name=“state”>
    @foreach ($states as $state)
        <option value="{{ $state->id }}">{{ $state->name }}</option>
    @endforeach
</select>

<script>
    $(function() {
        $('select[name=country]').change(function() {

            var url = '{{ url('country') }}' + $(this).val() + '/states/';

            $.get(url, function(data) {
                var select = $('form select[name= state]');

                select.empty();

                $.each(data,function(key, value) {
                    select.append('<option value=' + value.id + '>' + value.name + '</option>');
                });
            });
        });
    });
</script>

app / Country.php

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Country extends Model
{   
    public function states()
    {
        return $this->hasMany('App\State');
    }

app / State.php

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

Class State extends Model
{   
    public function country()
    {
        return $this->belongsTo('App\Country');
    }

route / web.php

Route::get('country/{country}/states', '[email protected]');

app / Http / Controllers / CountryController.php

<?php

namespace App\Http\Controllers;

use App\Country;

class CountryController extends Controller
{
    public function getStates(Country $country)
    {
        return $country->states()->select('id', 'name')->get();
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. LỖI khi gửi bảng dưới dạng tham số trong thủ tục lưu trữ MySQL

  2. Cập nhật H2 với tham gia

  3. MySQL:tổng mỗi ngày

  4. Python:ValueError:ký tự định dạng không được hỗ trợ '' '(0x27) tại chỉ mục 1

  5. phpMyBackupPro - Công cụ sao lưu MySQL dựa trên web dành cho Linux