我将用户个人资料图片存储在laravel存储文件夹而不是公用文件夹中,因为我希望保持公共文件夹不干净,避免用户混乱.
为了从该文件夹提供图像,我创建了一个简单的Controller Action,如下所示:
public function profilePicture($person, $size = 40){
$profile_picture_url = storage_path().'/profile_pictures/'.$person['id'].'/profile_'.$size.'.jpg';
if(!File::exists( $profile_picture_url ))
App::abort(404);
return Image::make($profile_picture_url)->response('jpg');
}
Run Code Online (Sandbox Code Playgroud)
这可以被认为是一个好习惯,还是我应该只是将图片保存在公共文件夹中?这样做会遇到性能问题吗?
我有一个jquery代码,可以创建一个下拉菜单,并将其放在用户右键单击的位置.一切正常,除了一件事:我不能在输入字段内输入.
生成的下拉列表如下所示:
<ul role="menu" style="display: none; position: absolute; left: 751px; top: 294px; z-index: 999999;">
<li><a href="#">Link 1</a></li>
<li role="separator" class="divider"></li>
<li><input type="text" name="filter"></li>
<li style="height:200px;" class="scroll-container-y">
<ul class="list-unstyled gutter-left-small">
<li><a href="#">Sublink 1</a></li>
<li><a href="#">Sublink 2</a></li>
<li><a href="#">Sublink 3</a></li>
</ul>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
在我的想法中,输入将用于过滤子链接.
我尝试了什么(没有结果):
希望你们能帮忙.
编辑(工作示例):看来,这是一个引导的问题:因为你可以从这个小提琴看到http://jsfiddle.net/2gkjb0h8/3/可直到引导模式被打开输入输入.仍然不知道如何解决这个问题.
编辑2:这是我想要实现的图像http://prnt.sc/bxbucf 在模态中,将有一个可选择TD的表格; 一旦选中,用户可以右键单击打开带有教师列表的上下文菜单(每个教师都是一个链接).这已经有效,输入是允许过滤所有可能的名称.
我应该将scoped CSS放在我的主文件中,还是应该更改print函数以容纳组件的scoped CSS?在第二种情况下,我应该如何更改JS功能?
我使用Laravel 5和许多Vue组件.在其中一个中,我有以下范围的CSS
<style scoped>
td.not-purchased{
background-color: darkgrey;
}
td.not-assigned-here{
background-color: lightgreen;
}
td .checkbox{
margin-top: 0;
margin-bottom: 0;
display: inline-block;
}
table th:nth-child(n+3),
table td:nth-child(n+3){
width: 50px;
overflow-x: hidden;
text-overflow: ellipsis;
}
</style>
Run Code Online (Sandbox Code Playgroud)
打印生成的内容时,该功能在新页面中打开内容,并将外部CSS复制到原始文档的HEAD中.
$(document).on('click', '.glyphicon[data-printselector]', function(){
if($(this).data('printselector') != ''){
// Print in new window
let printHtml = $($(this).data('printselector')).clone(),
printWindow = window.open(),
waitTimeout;
$(printWindow.document.body).append($('<div />', {class: 'container'}).append(printHtml));
$.each($('link'), function() {
$(printWindow.document.head).append($(this).clone());
clearTimeout(waitTimeout);
waitTimeout = setTimeout(function(){
// Here we ensure that CSS is loaded properly
printWindow.print();
printWindow.close();
}, …Run Code Online (Sandbox Code Playgroud) 我不知道为什么我遇到这个错误.
我有以下脚本:
foreach($brands as $brand){ // about 600items for this loop
....
....
DB::table('mailing_list')->insert(array(
'email' => $email,
'source' => $source,
'source_url'=> $brand->external_url,
'facebook_url' => $facebook_url,
'instagram_id' => $instagram_username,
'instagram_url' => $instagram_url,
'instagram_followers' => $instagram_followers
));
}
它始终在同一个项目中打破
Error while sending STMT_PREPARE packet. PID=2 (SQL: insert into `mailing_list` (`email`, `source`, `source_url`, `facebook_url`, `instagram_id`, `instagram_url`, `instagram_followers`) values (some@email.com, source, www.url.com, https://www.facebook.com/url, some_username, http://instagram.com/url, 501))
在我执行29个查询之前,现在是34个.
我想更好地理解这个错误:它可能是单个条目打破它,但即使我发布的数据是胡言乱语,实际的看起来很好.
我做了什么:
set_time_limit(3600);
DB::connection()->disableQueryLog();
DB::reconnect(Config::get('database.default')); // this one after each foreach loop
我无法在PhpStorm中设置自动完成功能来处理Laravel 4 blade.php文件.我到处搜索,但我找不到其他用户的问题.我已经在https://github.com/barryvdh/laravel-ide-helper上正确安装了此存储库,但我仍然得到刀片页面的空白格式.
谢谢
我希望能够在 laravel 中捕获以下错误
PHP Fatal error: Allowed memory size of 201326592 bytes exhausted
Run Code Online (Sandbox Code Playgroud)
我目前在全局中使用以下脚本来捕获其他错误,但这个特定错误似乎绕过了它。
App::error(function (Exception $exception, $code) {}
Run Code Online (Sandbox Code Playgroud)
谢谢
我的网站会覆盖特定的 DOM,而不是要求加载页面。有时,DOM 内部会有一些 Vue.js 组件(都是单页组件),这些组件会被覆盖。它们中的大多数驻留在仅为构建组件而创建的应用程序中。
两个问题:
我需要销毁这些组件吗?如果是:如何?
这种方法有没有更好的解决方案?
如何强制 Composer 完全重新安装我的所有供应商软件包?
在与服务器同步时,我丢失了供应商文件夹中的大部分 JS 文件。它发生了。我注意到没有命令强制作曲家完全重新安装软件包。它的作用是检查版本是否是最新上传的,如果是则跳过该包。删除锁定文件也不起作用。
有办法解决这个问题吗?
我最近在javascript中编写了很多程序,我试图在PHP中使用一些简写.
请考虑以下声明:
$value = 1;
return $value == 1 ?
'a' : $value == 2 ? 'b' : 'c';
Run Code Online (Sandbox Code Playgroud)
谁能解释一下为什么这会'a'在jQuery和'b'php中返回?
当尝试解密之前加密的密码时,我不断收到此错误:
The payload is invalid.
Run Code Online (Sandbox Code Playgroud)
这是相关的堆栈跟踪:
#0 /home/improojf/public_html/vendor/laravel/framework/src/Illuminate/Encryption/Encrypter.php(136): Illuminate\Encryption\Encrypter->getJsonPayload(NULL)
#1 /home/improojf/public_html/vendor/laravel/framework/src/Illuminate/Encryption/Encrypter.php(164): Illuminate\Encryption\Encrypter->decrypt('eyJpdiI6InloT0U...', false)
#2 /home/improojf/public_html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(261): Illuminate\Encryption\Encrypter->decryptString('eyJpdiI6InloT0U...')
#3 /home/improojf/public_html/app/Models/Server.php(29): Illuminate\Support\Facades\Facade::__callStatic('decryptString', Array)
#4 /home/improojf/public_html/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasAttributes.php(473): Server->getPasswordAttribute('eyJpdiI6InloT0U...')
Run Code Online (Sandbox Code Playgroud)
这里最大的问题是NULL加密器代码中随机出现一个字符串,这对我来说毫无意义。
另一个问题是,某些记录的行为只是预期的。
我用它做什么 这是用来在数据库中存储 smtp/pop3 服务器的密码
我尝试过的方法 通过不加密/解密密码完美解决了这个问题,这扰乱了目的
它总是返回错误吗?不,事实上有一些记录表现正常
我的猜测 php artisan cache:clear可能是其他地方报道的一种选择,但我认为应该有另一种解决方案。到目前为止,我已经(未经测试)以下访问器,而之前我只有第二次 try/catch
public function getPasswordAttribute($value){
try {
return Crypt::decryptString($value);
} catch (\Illuminate\Contracts\Encryption\DecryptException $e) {
\Illuminate\Support\Facades\Artisan::call('cache:clear');
}
try {
return Crypt::decryptString($value);
} catch (\Illuminate\Contracts\Encryption\DecryptException $e) {
if(app()->runningUnitTests())
return $value;
else
throw $e;
}
}
Run Code Online (Sandbox Code Playgroud) 是否有关于此主题的指南?我已经阅读了pusher文档,并且使用类似于以下代码的方法来管理断开连接似乎相当容易:
pusher.connection.bind('disconnected', function() {
// Do Something
})
Run Code Online (Sandbox Code Playgroud)
我不确定如何将其与Echo集成,因为我的代码如下:
window.EchoConnection = new Echo({
broadcaster: 'pusher',
key: window.EchoKey,
cluster: 'eu',
encrypted: true
});
Run Code Online (Sandbox Code Playgroud)
编辑:为了检查断开连接事件,请window.EchoConnection.connector.pusher.connection.disconnect()在控制台中运行
laravel ×7
php ×5
javascript ×3
css ×2
laravel-4 ×2
vue.js ×2
blade ×1
composer-php ×1
eloquent ×1
github ×1
html ×1
jquery ×1
laravel-5 ×1
laravel-8 ×1
laravel-echo ×1
mysql ×1
performance ×1
phpstorm ×1
pusher ×1