ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   PHP (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Готовый сайт для SAMP проекта (https://forum.antichat.xyz/showthread.php?t=1525825)

Livarka 04.12.2024 13:27

За интерактивную карту респект

Papercut 07.12.2024 16:26

Наконец-то нормальный, в рамках php, проект. А то задолбали со своими форумными шаблонами. Да и фронт пойдет. Человечество познало фреймворки!

Но я бы через intertia сделал рендер, чтобы не использовать накуренный шаблонизатор ларавела. Так в будущем проще будет при необходимости отделить фронт от бека. А в целом хорошо, конечно. Пусть люди хоть на чем-то адекватном учатся

norrthh 28.02.2025 22:50

В целом проект нормальный, но не понимаю прикола залить тупо архив, легче уж было залить на гитхаб. Из вторых минусов, смысл было заливать дамп бд, если laravel позволяет через консоль запустить миграции php artisan migrate.По-коду в целом нормально, но не понимаю прикола

PHP:





Код:

public
function
index
(
)
:
View
{
$users
=
User
:
:
count
(
)
;
$houses
=
House
:
:
count
(
)
;
$businesses
=
Business
:
:
count
(
)
;
$totalRevenue
=
Payment
:
:
where
(
'status'
,
PaymentStatus
:
:
Success
-
>
value
)
-
>
sum
(
'amount'
)
;
return
view
(
'admin.home'
,
[
'users'
=
>
$users
,
'houses'
=
>
$houses
,
'businesses'
=
>
$businesses
,
'totalRevenue'
=
>
$totalRevenue
]
)
;
}



Можно же было по красивее сделать условно

PHP:





Код:

public
function
index
(
)
:
View
{
return
view
(
'admin.home'
,
[
'users'
=
>
User
:
:
query
(
)
-
>
count
(
)
,
'houses'
=
>
House
:
:
query
(
)
-
>
count
(
)
,
'businesses'
=
>
Business
:
:
query
(
)
-
>
count
(
)
,
'totalRevenue'
=
>
Payment
:
:
query
(
)
-
>
where
(
'status'
,
PaymentStatus
:
:
Success
-
>
value
)
-
>
sum
(
'amount'
)
]
)
;
}



Так же посоветовал бы прочитать про принципы SOLID, некоторые моменты контроллера можно было бы вынести в Action или Services, ну, в целом код хороший)

Цитата:

Сообщение от norrthh

В целом проект нормальный, но не понимаю прикола залить тупо архив, легче уж было залить на гитхаб. Из вторых минусов, смысл было заливать дамп бд, если laravel позволяет через консоль запустить миграции php artisan migrate.По-коду в целом нормально, но не понимаю прикола

PHP:





Код:

public
function
index
(
)
:
View
{
$users
=
User
:
:
count
(
)
;
$houses
=
House
:
:
count
(
)
;
$businesses
=
Business
:
:
count
(
)
;
$totalRevenue
=
Payment
:
:
where
(
'status'
,
PaymentStatus
:
:
Success
-
>
value
)
-
>
sum
(
'amount'
)
;
return
view
(
'admin.home'
,
[
'users'
=
>
$users
,
'houses'
=
>
$houses
,
'businesses'
=
>
$businesses
,
'totalRevenue'
=
>
$totalRevenue
]
)
;
}



Можно же было по красивее сделать условно

PHP:





Код:

public
function
index
(
)
:
View
{
return
view
(
'admin.home'
,
[
'users'
=
>
User
:
:
query
(
)
-
>
count
(
)
,
'houses'
=
>
House
:
:
query
(
)
-
>
count
(
)
,
'businesses'
=
>
Business
:
:
query
(
)
-
>
count
(
)
,
'totalRevenue'
=
>
Payment
:
:
query
(
)
-
>
where
(
'status'
,
PaymentStatus
:
:
Success
-
>
value
)
-
>
sum
(
'amount'
)
]
)
;
}



Так же посоветовал бы прочитать про принципы SOLID, некоторые моменты контроллера можно было бы вынести в Action или Services, ну, в целом код хороший)

Плюс еще глянул web.php файл, в чем прикол было выносить админский роуты в отдельный файл, а остальные оставить так и есть, можно же было еще более разделить на company.php, auth.php, profile.php, guest.php + судя по коду ты умеешь использовать Route::prefix, в чем прикол было делать так если ты через prefix мог сделать код куда красивее

PHP:





Код:

Route
:
:
get
(
'news'
,
[
NewsController
:
:
class
,
'index'
]
)
-
>
name
(
'admin.news'
)
;
Route
:
:
get
(
'news/create'
,
[
NewsController
:
:
class
,
'createForm'
]
)
-
>
name
(
'admin.news.create.form'
)
;
Route
:
:
post
(
'news/create'
,
[
NewsController
:
:
class
,
'store'
]
)
-
>
name
(
'admin.news.create'
)
;
Route
:
:
get
(
'news/edit/{news}'
,
[
NewsController
:
:
class
,
'editForm'
]
)
-
>
name
(
'admin.news.edit.form'
)
;
Route
:
:
put
(
'news/edit/{news}'
,
[
NewsController
:
:
class
,
'update'
]
)
-
>
name
(
'admin.news.edit'
)
;
Route
:
:
delete
(
'news/edit/{news}'
,
[
NewsController
:
:
class
,
'destroy'
]
)
-
>
name
(
'admin.news.destroy'
)
;
Route
:
:
get
(
'users'
,
[
UserController
:
:
class
,
'index'
]
)
-
>
name
(
'admin.users'
)
;
Route
:
:
get
(
'users/edit/{user}'
,
[
UserController
:
:
class
,
'editForm'
]
)
-
>
name
(
'admin.users.edit.form'
)
;
Route
:
:
put
(
'users/edit/{user}'
,
[
UserController
:
:
class
,
'update'
]
)
-
>
name
(
'admin.users.edit'
)
;
Route
:
:
delete
(
'users/edit/{user}'
,
[
UserController
:
:
class
,
'destroy'
]
)
-
>
name
(
'admin.users.destroy'
)
;
Route
:
:
get
(
'users/{user}/payments'
,
[
UserController
:
:
class
,
'payments'
]
)
-
>
name
(
'admin.users.payments'
)
;
Route
:
:
get
(
'admins'
,
[
AdminController
:
:
class
,
'adminList'
]
)
-
>
name
(
'admin.admins.index'
)
;
Route
:
:
get
(
'admins/edit/{admin}'
,
[
AdminController
:
:
class
,
'editForm'
]
)
-
>
name
(
'admin.admins.edit.form'
)
;
Route
:
:
put
(
'admins/edit/{admin}'
,
[
AdminController
:
:
class
,
'update'
]
)
-
>
name
(
'admin.admins.edit'
)
;
Route
:
:
get
(
'admins/create'
,
[
AdminController
:
:
class
,
'createForm'
]
)
-
>
name
(
'admin.admins.create.form'
)
;
Route
:
:
post
(
'admins/create'
,
[
AdminController
:
:
class
,
'store'
]
)
-
>
name
(
'admin.admins.create'
)
;
Route
:
:
delete
(
'admins/{admin}'
,
[
AdminController
:
:
class
,
'destroy'
]
)
-
>
name
(
'admin.admins.destroy'
)
;
Route
:
:
get
(
'profile'
,
[
AdminController
:
:
class
,
'profile'
]
)
-
>
name
(
'admin.profile'
)
;



Время: 00:35