我有一个方形图像.img-container
.有时,图像加载和.img-container
折叠需要几秒钟,并且只有在图像加载时才占据整个高度.但是,我想在图像加载时保持整个高度(就好像图像在那里).
我会通过设置已经很容易地做到了这一点min-height
上img-container
一流的,但它是一个流体网格,图像响应(注意引导的img-responsive
辅助类),这使得它很难设定的最小高度为不同屏幕尺寸合适的值(虽然实现以媒体查询为最后手段).通过放置一个占位图像解决这个问题听起来像是一种矫枉过正(尤其是在移动设备上的性能).此外,不确定首先加载什么,占位符图像或实际图像.
<div class="col-xs-12 col-sm-6 col-md-4 col-lg-4">
<div class="card">
<span class="img-container thumbnail clearfix">
<img alt class="pull-left img-responsive" src="http://...">
</span>
<div class="caption">
<a href="http://.." class="card-title lead">
Some text
</a>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud) 我正在使用CloudFront缓存和分发当前存储在标准存储类S3中的所有缩略图.由于CloudFront仅缓存原始数据并且每24小时访问它们,因此使用比标准更便宜的存储类是有意义的:标准不常访问(IA)或减少冗余(RR).但我不确定哪一种更合适且更具成本效益.
标准IA具有最便宜的存储(比标准类便宜58%,比RR便宜47%),但比标准和RR要贵60%.但是,在计算成本时,存储在Standard-IA类中的128kb以下的所有文件都会舍入到128kb,这适用于我的大多数缩略图.
同时,RR级的存储仅比标准级便宜20%,但其请求成本比标准IA低60%.
我不确定哪一个在实践中最具成本效益,并且会感谢任何有经验的人都能提供一些反馈.
我已经通过Elastic Beanstalk配置了一个默认的clean node.js应用程序,并且有一个node.js脚本试图npm install
在项目目录(/var/app/current/deploy-dist
)中运行,但是,引发了以下权限错误:
npm WARN locking Error: EACCES: permission denied, open '/tmp/.npm/_locks/staging-f212e8d64a01707f.lock'
npm WARN locking at Error (native)
npm WARN locking /tmp/.npm/_locks/staging-f212e8d64a01707f.lock failed { Error: EACCES: permission denied, open '/tmp/.npm/_locks/staging-f212e8d64a01707f.lock'
npm WARN locking at Error (native)
npm WARN locking errno: -13,
npm WARN locking code: 'EACCES',
npm WARN locking syscall: 'open',
npm WARN locking path: '/tmp/.npm/_locks/staging-f212e8d64a01707f.lock' }
npm WARN deploy-dist No description
npm WARN deploy-dist No repository field.
npm WARN deploy-dist No license field.
npm …
Run Code Online (Sandbox Code Playgroud) 在我的Rails应用程序中,我有2个模型之间的多对多关系,Teacher
并Course
通过连接表.我想创建某种验证,其中如果没有与至少一位教师相关联就无法创建课程(假设我们在添加新课程时所有教师都在数据库中).如果这是一对多的关系,这很容易做到,但是由于多对多关系,我们需要course
在关联之前保存它们teachers
.
我最初的计划是覆盖模型中的Rails create
方法,Course
允许在保存之前传递teacher_ids
并验证至少一个存在,但我不确定这是一个不错的方法.teacher_id
course
activerecord many-to-many ruby-on-rails ruby-on-rails-3 ruby-on-rails-4
假设视图是在erb/haml中,但是是静态的(其中没有任何动态部分),Rails是否每次有人点击它时重新编译该视图,或者在有人点击它之后缓存html?
一个跟进问题:如果我有一些动态部分的视图,Rails是否只重新编译视图的动态部分还是重新编译整个页面?
我正在运行Rails 4.
我正在尝试重构以下node.js代码。
每个案例都会生成一个缩略图,将一组不同的GraphicMagic转换链接到图像。
switch(style.name) {
case 'original':
gm(response.Body)
.setFormat('jpg').autoOrient().resize(style.w, style.h, style.option)
.toBuffer(function(err, buffer) { if (err) { next(err); } else { next(null, buffer); } });
break;
case 'large':
gm(response.Body)
.setFormat('jpg').autoOrient().resize(style.w, style.h, style.option)
.quality(style.quality)
.strip().interlace('Plane')
.toBuffer(function(err, buffer) { if (err) { next(err); } else { next(null, buffer); } });
break;
case 'medium':
gm(response.Body)
.setFormat('jpg').autoOrient().resize(style.w, style.h, style.option)
.crop(style.w, style.h, style.crop.x_offset, style.crop.y_offset)
.repage('+')
.strip().interlace('Plane')
.toBuffer(function(err, buffer) { if (err) { next(err); } else { next(null, buffer); } });
break;
case 'small':
gm(response.Body)
.setFormat('jpg').autoOrient().resize(style.w, style.h, …
Run Code Online (Sandbox Code Playgroud) 理想情况下,我想在用户登录后自动记住这些用户,并让他们登录几周,直到再次申请凭据.那我要设置config.remember_for = 3.weeks
还是config.timeout_in = 3.weeks
?
我正在关注设置AWS Lambda的AWS演练,该Lamb Lambda从S3存储桶生成缩略图:当sourcebucket
接收到新对象时,它会调用lambda来转换该对象并将其缩略图保存为destination bucket
.一切都与默认代码片段一起使用,其中没有为对象指定ACL,在这种情况下S3会自动将其设置为private
.但是,当我修改代码并将对象的ACL设置为时'public-read'
,Lambda无法将对象保存到目标存储桶中并引发'Access Denied'
错误.
s3.putObject({
Bucket: dstBucket,
Key: dstKey,
Body: data,
ContentType: 'image/jpeg',
ACL: 'public-read',
StorageClass: style.storageClass})
Run Code Online (Sandbox Code Playgroud)
在本教程之后,我通过IAM向lambda添加了以下访问策略adminuser
:
aws lambda add-permission \
--function-name CreateThumbnail \
--region eu-west-1 \
--statement-id some-unique-id \
--action "lambda:InvokeFunction" \
--principal s3.amazonaws.com \
--source-arn arn:aws:s3:::sourcebucket \
--source-account bucket-owner-account-id \
--profile adminuser
Run Code Online (Sandbox Code Playgroud)
adminuser是AdministratorAccess
允许对所有资源执行所有操作的组的一部分:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "*",
"Resource": "*"
}
]
} …
Run Code Online (Sandbox Code Playgroud) 我通过将字符串散列传递给 Rails 的grouped_options_for_select
辅助方法来生成一组选项。我想禁用某些选项,但似乎没有实现此目的的官方方法,因为 grouped_options_for_select 不像disabled:
其他帮助器方法(例如options_for_select
. 有没有办法以某种方式绕过这个?
amazon-s3 ×2
node.js ×2
activerecord ×1
amazon-iam ×1
aws-lambda ×1
aws-sdk ×1
css ×1
devise ×1
erb ×1
haml ×1
image ×1
javascript ×1
many-to-many ×1
ubuntu ×1