azishapidin / indoregion

Package Laravel wilayah Indonesia | Data Provinsi, Kabupaten/Kota, Kecamatan dan Kelurahan/Desa seluruh Indonesia.
https://packagist.org/packages/azishapidin/indoregion
MIT License
244 stars 84 forks source link

Update PSR-4, Facade & composer.json #13

Closed cacing69 closed 3 years ago

cacing69 commented 4 years ago

saya ingin diskusi telebih dahulu untuk fungsi utama dari facade , agar kedepan nya bisa lebih fokus untuk pengembanganya & lebih mudah dalam penggunaannya, silahkan di review terlebih dahulu sedikit fungsi yang ada disini

azishapidin commented 4 years ago

Saya coba cek-cek dulu ya mas @cacing69

azishapidin commented 4 years ago

Oh iya mas @cacing69 saya juga kepikiran kalau model, migration dan seeder by default tidak perlu di publish. Jadi bisa langsung migrate dan seed tanpa publish. Gimana kira-kira ya?

cacing69 commented 4 years ago

@azishapidin iya bagus juga itu mas, tapi sy blum pernah buat yg beigtu, ada referensi nya ngga mas?

cacing69 commented 4 years ago

@azishapidin mungkin dengan membuat command khusus, contoh indoregion:migrate, indoregion:seed, sepertinya akan lebih memudahkan penggunaannya

cacing69 commented 4 years ago

@azishapidin dan juga untk model, nntinya akan langsung menggunakan namespace dari package ini sendiri,

kalaupun ingin publish model, migrate dll, tetap menggunakan publish yg sekarang, atau menurut mas gimana baiknya

azishapidin commented 4 years ago

@azishapidin mungkin dengan membuat command khusus, contoh indoregion:migrate, indoregion:seed, sepertinya akan lebih memudahkan penggunaannya

Iya begitu mas, saya baru kepikirannya sih pake kaya gini: Artisan::call('migrate', ['--path' => 'xxx']), termasuk seed juga kaya gitu. Gimana kira-kira mas?

azishapidin commented 4 years ago

@azishapidin dan juga untk model, nntinya akan langsung menggunakan namespace dari package ini sendiri,

kalaupun ingin publish model, migrate dll, tetap menggunakan publish yg sekarang, atau menurut mas gimana baiknya

Betul mas, nanti bisa di override juga (untuk kebutuhan lain). Bagian ini saya belum tau sih cara override class nya gimana

azishapidin commented 4 years ago

@azishapidin dan juga untk model, nntinya akan langsung menggunakan namespace dari package ini sendiri, kalaupun ingin publish model, migrate dll, tetap menggunakan publish yg sekarang, atau menurut mas gimana baiknya

Betul mas, nanti bisa di override juga (untuk kebutuhan lain). Bagian ini saya belum tau sih cara override class nya gimana

Screen Shot 2020-05-28 at 13 10 31 Atau bisa juga nanti di define di config seperti ini mas, default-nya pake namespace package. Kalau udah di publish nanti harus update lagi bagian ininya

cacing69 commented 4 years ago

@azishapidin mungkin dengan membuat command khusus, contoh indoregion:migrate, indoregion:seed, sepertinya akan lebih memudahkan penggunaannya

Iya begitu mas, saya baru kepikirannya sih pake kaya gini: Artisan::call('migrate', ['--path' => 'xxx']), termasuk seed juga kaya gitu. Gimana kira-kira mas?

ohh iya sepertinya bisa, mmpung ada waktu luang, sy coba kerjakan sebisa nya, nnti kita diskusikan lagi kelanjutan nya disini

azishapidin commented 4 years ago

@azishapidin mungkin dengan membuat command khusus, contoh indoregion:migrate, indoregion:seed, sepertinya akan lebih memudahkan penggunaannya

Iya begitu mas, saya baru kepikirannya sih pake kaya gini: Artisan::call('migrate', ['--path' => 'xxx']), termasuk seed juga kaya gitu. Gimana kira-kira mas?

ohh iya sepertinya bisa, mmpung ada waktu luang, sy coba kerjakan sebisa nya, nnti kita diskusikan lagi kelanjutan nya disini

Oke terima kasih mas

cacing69 commented 4 years ago

@azishapidin mungkin dengan membuat command khusus, contoh indoregion:migrate, indoregion:seed, sepertinya akan lebih memudahkan penggunaannya

Iya begitu mas, saya baru kepikirannya sih pake kaya gini: Artisan::call('migrate', ['--path' => 'xxx']), termasuk seed juga kaya gitu. Gimana kira-kira mas?

ohh iya sepertinya bisa, mmpung ada waktu luang, sy coba kerjakan sebisa nya, nnti kita diskusikan lagi kelanjutan nya disini

Oke terima kasih mas

tapi dari beberapa sample yg saya dapat, seperti nya file migration & seeder perlu di pindahkan terlebih dahulu ke dalam folder database/{seed/migrations}, karena dari situ aja laravel bisa baca classmap composer nya, atau mungkin mas punya saran lain?seingat saya migration itu bisa masuk di serviceProvider, cuman kalo ga di copy ke folder migration, kita ga bisa migrate pakai file specific

azishapidin commented 4 years ago

@azishapidin mungkin dengan membuat command khusus, contoh indoregion:migrate, indoregion:seed, sepertinya akan lebih memudahkan penggunaannya

Iya begitu mas, saya baru kepikirannya sih pake kaya gini: Artisan::call('migrate', ['--path' => 'xxx']), termasuk seed juga kaya gitu. Gimana kira-kira mas?

ohh iya sepertinya bisa, mmpung ada waktu luang, sy coba kerjakan sebisa nya, nnti kita diskusikan lagi kelanjutan nya disini

Oke terima kasih mas

tapi dari beberapa sample yg saya dapat, seperti nya file migration & seeder perlu di pindahkan terlebih dahulu ke dalam folder database/{seed/migrations}, karena dari situ aja laravel bisa baca classmap composer nya, atau mungkin mas punya saran lain?seingat saya migration itu bisa masuk di serviceProvider, cuman kalo ga di copy ke folder migration, kita ga bisa migrate pakai file specific

Untuk migration nya bisa seperti ini kan ya? https://laravel.com/docs/7.x/packages#migrations, tapi yang saya baca sih iya jadi gak bisa specific nantinya migrationnya.

Kalau untuk Seeder mungkin gak pakai Seeder juga gak masalah kan ya harusnya? Jadi bikin command tersendiri aja buat masukin tuh data.

Kalau seperti ini gimana mas kira-kira:

cacing69 commented 4 years ago

@azishapidin mungkin dengan membuat command khusus, contoh indoregion:migrate, indoregion:seed, sepertinya akan lebih memudahkan penggunaannya

Iya begitu mas, saya baru kepikirannya sih pake kaya gini: Artisan::call('migrate', ['--path' => 'xxx']), termasuk seed juga kaya gitu. Gimana kira-kira mas?

ohh iya sepertinya bisa, mmpung ada waktu luang, sy coba kerjakan sebisa nya, nnti kita diskusikan lagi kelanjutan nya disini

Oke terima kasih mas

tapi dari beberapa sample yg saya dapat, seperti nya file migration & seeder perlu di pindahkan terlebih dahulu ke dalam folder database/{seed/migrations}, karena dari situ aja laravel bisa baca classmap composer nya, atau mungkin mas punya saran lain?seingat saya migration itu bisa masuk di serviceProvider, cuman kalo ga di copy ke folder migration, kita ga bisa migrate pakai file specific

Untuk migration nya bisa seperti ini kan ya? https://laravel.com/docs/7.x/packages#migrations, tapi yang saya baca sih iya jadi gak bisa specific nantinya migrationnya.

Kalau untuk Seeder mungkin gak pakai Seeder juga gak masalah kan ya harusnya? Jadi bikin command tersendiri aja buat masukin tuh data.

Kalau seperti ini gimana mas kira-kira:

  • Setelah install cukup indoregion:publish (untuk copy file migration + config/indoregion.php + migrate migration indoregion) kemudian untuk memasukan data indoregion:insert-data atau bisa juga milih apa aja yang mau di insert misal indoregion:insert-data --only=province,regency.
  • Jika mau overide model bisa pake command vendor:publish lalu update config/indoregion.php

iya mas tanpa publish migration kita bisa pakaui migratiion nya, cuman dari dokumentasi yg saya baca sepertinya jika tidak di pindah ke folder database/migration kita tidak bisa menggunakan migration secara spesifik, kite lanjutin untuk insert data nya aj dlu buat sekarang

cacing69 commented 4 years ago

@azishapidin hi mas, maaf nih kelamaan gawe haha. jadi saya coba baca ulang script kemaren yg sy ubah udh ckup lama, dan saya coba buat dengan 2 command yaitu, indoregion:publish (untuk publish model, seed & migrations) dan indoregion:populate (untuk melakukan migrateion & seed nya)

cuman menurut saya disini rasa kurang sreg ketika menjalankan indoregion:publish harus mempublish model sekalian, karena sekarang kita sudah punya base model nya di AzisHapidin\IndoRegion\Models\Province misalnya, menurut masnya lebih baik gimana?

azishapidin commented 4 years ago

Hallo mas, sama nih saya juga hehe. Kayanya memang lebih memudahkan kalau pake model yang ada di package aja ya?

cacing69 commented 4 years ago

haha iya kemaren pas juga lgi mengerjakan ini, eh malah ad dadakan krjaan lain, iya mas kalo menurut saaya juga emng lbih enak pakai package bawaan, kalo utk command nya mnrut mas gimana, saya awal nya mau pisah antara migrate & seed, tapi ga tau jga knapa buat nya jadi populate haha.

oo iya nnti di dokumentasi berarti sya sesuaikan juga dengan Model yg baru

azishapidin commented 4 years ago

Mantap mas, kalau menurut saya sih lebih bagus kalau dipisah mas. Terus kayanya bagus juga kalau ada pilihan yang mau di seed apa aja, misal indoregion:populate —only=province (jika lebih dari 1 pake koma)

Eh iya baru kepikiran, kalau migrate kaya sekarang pas migrate:rollback aman gak ya?

cacing69 commented 4 years ago

Mantap mas, kalau menurut saya sih lebih bagus kalau dipisah mas. Terus kayanya bagus juga kalau ada pilihan yang mau di seed apa aja, misal indoregion:populate —only=province (jika lebih dari 1 pake koma)

Eh iya baru kepikiran, kalau migrate kaya sekarang pas migrate:rollback aman gak ya?

oh iya sy juga belum nyoba, kya nya bisa aja sih, soal nya kan ngejalankan php artisan migrate itu disana, sya lanjutin populate nye pakai parameter dlu mas

cacing69 commented 4 years ago

image @azishapidin rollback nya mas ky ny ttp bisa sih, krna migrate nya itu kan pakai command bawaan laravel, kira kira ap lg yg kurang ya mas

azishapidin commented 4 years ago

@cacing69 sip mantap mas kalo aman mah

azishapidin commented 4 years ago

Sudah saya merge ke develop mas @cacing69, insya allah secepatnya saya coba test-test

cacing69 commented 4 years ago

@azishapidin paling nanti yg perlu di perbaiki utk bagian facades ny itu kalo menurut saya, next ny baru sy test biar compatible di lumen jga, tpi stable kan yg ini dlu lah biar enak