-
Notifications
You must be signed in to change notification settings - Fork 140
#1741 comment text area character limit fixed (500 chars) #1762
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
#1741 comment text area character limit fixed (500 chars) #1762
Conversation
</ul> | ||
@auth | ||
@include('components.comment._form') | ||
@include('components.comment._form', ['maxLength' => \App\Http\Requests\CommentRequest::MAX_CONTENT_LENGTH]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Давай эту константу использовать прямо внутри формы, т.е. не передавать снаружи, а обращаться к ней в компоненте.
Тк форма комментария и логика они неразрывно связаны. Ну и так код будет почище. То, что относится к комментам, будет внутри.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Давай эту константу использовать прямо внутри формы, т.е. не передавать снаружи, а обращаться к ней в компоненте. Тк форма комментария и логика они неразрывно связаны. Ну и так код будет почище. То, что относится к комментам, будет внутри.
Поправил
0df6ddb
to
537e493
Compare
*/ | ||
use App\Helpers\MarkdownHelper; | ||
if (!defined('MAX_CONTENT_LENGTH')) { | ||
define('MAX_CONTENT_LENGTH', 500); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
не, у тебя до этого верно было что константабыла в реквесте определена. Ведь получается, что у нас константа 500, которая обозачает длину коммента, расползается по двум местам.
тут как будто бы нет лучшего решения, но определять константы внутри вью - зло.
До этого верный путь был - константа определена в реквесте, и использована во вью. Просто не нужно ее прокидывать снаружи (из другой вью) в этот компонент, а прямо тут обращаться к контснанте, как щас делаешь.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Хорошо, делаю.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@fey Не понял как обращаться к константе реквеста из вью. Можно ли сделать константу в config\comment ? а она будет глобально доступна. Для Laravel я так понял это лучший вариант.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@fey Не понял как обращаться к константе реквеста из вью. Можно ли сделать константу в config\comment ? а она будет глобально доступна. Для Laravel я так понял это лучший вариант.
А у тебя ведь было. \App\Http\Requests\CommentRequest::MAX_CONTENT_LENGTH
- в принципе нам так допустимо. Почему? Потому что это не настройка уровня приложения прям ,чтобы в конфиг уносить. Это локальная штука конкретно к комментам. Это может быть внутри реквеста, внутри ДТО, или модели, ведь мы на уровне предметной области задаем бизнес-правило "комментарий не может быть больше 500 символов".
Константа не будет магической, и ее можно использовать во вью, реквесте, в переводах.
@if ($comment->isReply()) | ||
<div class="border my-2"> | ||
<div class="small text-muted ml-2">{{ $comment->parent->content }}</div> | ||
<div class="small text-muted ml-2" style="overflow-wrap: break-word;">{{ $comment->parent->content }}</div> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Вот это как будто бы лишнее изменение. Для чего оно?
Во первых это не решает нашу текущую задачу (показать лимит сообщения), во вторых это инлайн-стиль, который мы избегаем. Скорее всего для бутстрапа есть нужный класс-утилита. Используй его. Если нет - определени кастом.
Похожа проблема где-то уже была, поэтому можешь поискать по вьюхам.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Я понял, исправлю. Это решает проблему, когда отвечаешь на комментарий, ответ показывается нормально с переносами, а сам исходный коммент показывается в другом стиле и длинные слова не переносятся. Вот, нашел: <div class="small text-muted ml-2 text-break">
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
хм, верно понял, что break-word решает это, а text-break - нет?
Что-то пошло не так... |
7dbbe8b
to
55413af
Compare
use App\Helpers\MarkdownHelper; | ||
if (!defined('MAX_CONTENT_LENGTH')) { | ||
define('MAX_CONTENT_LENGTH', 500); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@RasmuS2024 константа вернулась/осталась)
В config/comment.php у тебя определенеа длина коммента.
А почему решил через конфиг это делать? Мне кажется через константу в CreateCommentRequest кмк вполне норм было. Конфиг возможно стоит оставить для более системных штук. А так, если константа будет в реквесте, то будет +- локализовано это (т.е. не ползет по остальному риложению).
Еще вариант - как раз использовать DTO, когда ты из реквеста (тела запроса) создаешь ридонли класс типа CommentData, и переменная тоже там может быть.
Можно еще прям в модель это впиндюрить. Если у нас "бизнесовое" требовани ограничить длину коммента, то это справедливо туда положить.
@if ($comment->isReply()) | ||
<div class="border my-2"> | ||
<div class="small text-muted ml-2">{{ $comment->parent->content }}</div> | ||
<div class="small text-muted ml-2 text-break">{{ $comment->parent->content }}</div> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Вот тут в итоге это изменение - для чего?)
Т.е. мы тут фиксим и верстку и вывод сообщения о длине коммента? Я думаю, лучше разделить и делать это разными ПРами, тк по смыслам это именно разные вещи. И если что-то пойдет не так, то будет легче откатить одно из изменений.
55413af
to
f576f79
Compare
f576f79
to
f41f9ce
Compare
@ddm14159 подправил, но правильно ли? Лишние правки не относящиеся к данному ищщусу убрал. |
…nd fixed resorces/lang comment files
Pull request details
RU
EN
Issues fixed
#1741