小编jus*_*ach的帖子

与Haml/Sass的Wordpress

使用HamlSass进行一些Rails项目后,我发现它们极大地加快了我的前端开发速度.但是,我还没有找到像Wordpress一样强大或熟悉客户的Rails博客平台,因此对于需要具有基本CMS /博客功能的轻量级网站的项目来说,这仍然是我的首选.(我已经看过Radiant,Mephisto等,虽然我当然很欣赏Rails博客引擎的建议,但这不是我想在这里回答的问题.)

我真的希望能够在Wordpress网站的上下文中使用Haml和Sass,虽然我知道各种PHP实现的存在,但大多数似乎不活跃或有缺陷.有没有人在这里使用Haml和Sass与Wordpress网站成功?我在Wordpress模板文件(为Wordpress主题提供动力的.php文件)和Wordpress编辑器的HTML编辑模式中都要求这一点,尽管后者远不那么重要.

注意:我知道我可以安装适当的ruby gems并从Haml/Sass源编译我自己的HTML/CSS; 我正在寻找的东西更多的是我在Rails中习惯的功能,其中编译的HTML/CSS是基于每个请求自动生成的(缓存行为也很好,但肯定不是必需的) ).

提前致谢!

php wordpress haml sass

11
推荐指数
2
解决办法
6729
查看次数

Git:应用程序配置和不同的环境

我们使用Git的大多数我们建立在我们的商店的web应用程序,尽管应用程序本身使用多种技术(PHP,Rails的,等等),我们通常对每个站点分期和生产服务器.典型地,这些服务器具有不同的套数据库证书的以及不同的基于环境的配置设置(例如高速缓存).我们的工作流程一般包括保持每个项目中的两个的Git分支:主人,这反映了生产服务器,并分期,这反映了分期.新功能是在分期(或支行)开发和完成和部署后合并回主.

我的问题是关于维护特定于分支和环境的配置文件的最佳方法.我在这里这里看到了类似问题的答案,而且都没有真正满足.主要的两种方法似乎是a)使用.gitignore排除将配置文件保留在git的权限范围之外,或b)编写反射的,环境感知的代码,该代码确定例如基于主机名使用什么数据库凭证.我的问题是a)它只允许一组配置文件存在于代码库中(与当前分支无关),因此其他环境的配置文件会丢失.b)另一方面,似乎只需要以与应用程序功能无关的方式对代码库进行不必要的修改.

理想情况下,我想要一种方法来"锁定"某个分支内的配置文件,这样每当我签出master时,我都会获得主配置文件,每当我检查暂存时,我都会获得暂存配置文件.此外,将分段合并到主服务器不应以任何方式影响主配置文件.到目前为止,我们通过在git root之外包含包含特定于环境的配置文件的文件夹并在部署时手动将适当的文件移动到代码库中来解决这个问题,但这当然是不必要的hackish(并且可能是危险的).

有没有办法用git完成这个?

谢谢你的考虑!

git deployment development-environment web-deployment-project configuration-files

10
推荐指数
1
解决办法
3076
查看次数

在AS3中更改TextField选择颜色

如何在actionscript 3中更改TextField的选择("突出显示")颜色?我在黑色背景上有一个带有白色文本的输入文本字段,因此,选项是不可见的,这对可用性来说太可怕了.谢谢!

flash usability select actionscript-3 textfield

7
推荐指数
1
解决办法
9077
查看次数

iPad:Mobile Safari,HTML5 <video>和jquery转换

我正在为一个特定于iPad的网站构建一个简单的概念验证,该网站将使用视频转换将用户从一个部分带到另一个部分.出于概念证明的目的,每个"部分"仅是具有位于其上方的半透明内容文本框的图像.只有2个部分,"主页"和"联系人",他们通过z-indexing将过渡视频夹在它们之间.概念验证的想法是点击"主页"部分使其消失,然后回放过渡视频,(完成后)消失以显示"联系"部分.这个版本的演示版在iPad和Safari for Windows和OS X上运行良好.这是JS:

var myVideo = document.getElementsByTagName('video')[0];
$('document').ready(function() {
  $('#home').click(function() {
    $(this).css('display','none');
    myVideo.play();
    myVideo.addEventListener('ended', function() {
      $('#transition').css('display','none');
    });
  });
});
Run Code Online (Sandbox Code Playgroud)

我想要做的是fadeOut()在点击"home"部分时使用jQuery 效果在开始视频之前淡出文本框.代码看起来很简单:

$('document').ready(function() {
  $('#home').click(function() {
    $('#home-copy').fadeOut('slow', function() { 
      $('#home').css('display','none');               
      myVideo.play();
      myVideo.addEventListener('ended', function() {
        $('#transition').css('display','none');
        $('#home-copy').fadeIn('slow');
      });
    });
  });
});
Run Code Online (Sandbox Code Playgroud)

它在桌面版Safari上完全按照预期工作.然而,在iPad上,文本框按预期淡出,主页部分也消失,但视频顽固地拒绝开始播放.我真的不知道为什么会这样,但那就是发生了什么.我很感激您的任何建议!

顺便说一句,这是标记:

<div id="main-container">
  <div id="home-copy">
    <h1>Lorem Ipsum Dolor Sit Amet</h1>
    <p>Donec blandit pharetra luctus. Nam at porttitor odio. Nullam sem orci, venenatis sed pharetra eget, commodo rhoncus quam. Ut euismod vehicula bibendum. Curabitur in magna ante, …
Run Code Online (Sandbox Code Playgroud)

video jquery html5 ipad

7
推荐指数
1
解决办法
6910
查看次数

执行Facebook身份验证:客户端和服务器端

我正在Flash(AS3)中构建一个与Facebook紧密集成的社交媒体应用程序 - 所有用户帐户都通过Facebook连接处理,所有Facebook连接都通过JavascriptAS3 Facebook API 的组合来处理.我在后端使用Codeigniter进行服务器端数据管理,包括通过Flash中的URLRequests跟踪网站上的用户操作和数据.

我的问题是我不知道如何防止欺骗从Flash发出的服务器请求; 理论上,恶意用户可以跟踪Flash对我的服务器进行的调用,并以(例如)插入垃圾数据并将其与我的数据库中给定的Facebook用户ID相关联的方式重现它们.所有身份验证都在客户端进行(通过Facebook JS API),服务器没有干预,所以我很难确定如何以确保用户的方式确保Flash和服务器之间的呼叫安全必须通过Facebook进行身份验证才能生成它们.

我考虑的一种可能性是使用客户端和服务器已知的加密方案来回传递Facebook UID,这肯定比明确传递它们更好.然而,只有一个有进取心的黑客有足够的时间/耐心才能打破计划(或反编译swf)以搞砸一切.

无论如何,我可能会过度思考这一点,但这似乎是一个重点,我真的不确定最好的方法.任何反馈将不胜感激!

javascript security authentication flash facebook

7
推荐指数
2
解决办法
2516
查看次数

MySQL事务:多个并发事务和数据完整性

我正在使用事务来管理相当复杂的 Web 应用程序中多个 MySQL InnoDB 表的数据。简而言之,给定的交易的工作原理如下:

  1. 从“user_point_totals”表中的一行读取数据
  2. 各种机制计算用户的新积分总数应该是多少
  3. 在“user_point_totals”表中创建一个新条目,反映更新后的总数

假设用户 A 执行了一些与积分相关的操作,执行步骤 1,执行线程将用户的积分总数读入内存,并且应用程序开始计算新的总数。同时,用户 B 执行的操作会影响用户 A 的总积分,并且另一笔交易开始;但是,第一个事务尚未完成,因此第二个线程获取与第一个事务相同的点总值作为起点(来自同一表行)。随后,事务 1 完成并创建一个新的用户总积分,并了解新值应该是什么,此后不久,事务 2 完成并为用户总积分创建一个新行。但是,第二笔交易的积分总数现在不正确,因为它无法说明交易 1 创建的新总分。

我的问题是:

  • 由于交易的原子性质,这种情况是不可能的吗?我显然不太理解这一点?
  • 如果不是,如何确保在此类情况下存在数据完整性?

感谢您的考虑!

mysql database transactions data-integrity

6
推荐指数
1
解决办法
4381
查看次数

Rails建模:将HABTM转换为has_many:through

我正在现有的Rails站点上进行维护工作,并且遇到了来自多对多关联的一些问题.看起来该站点最初是has_and_belongs_to_many为了一些关系而构建的,这些关系后来在业务逻辑中变得更加复杂,所以我需要使用它has_many :through来支持关系表中的其他字段.但是,最初用于HABTM的连接表没有主键,我必须添加一个以支持单独的关系建模has_many :through.

将主键添加到包含大量数据的现有表的最佳方法是什么?还有另一种方法可以做我正在尝试的事情吗?

顺便提一下,系统在Oracle上运行.

谢谢!

贾斯汀

更新11/9/09 3:58 pm:我不是Oracle专家,并且已经迷失在Oracle版本的非null,自动增量等等.最初我尝试通过添加一个新字段作为主键来执行Mike和Corey所建议的操作,但Oracle不允许我将非空字段添加到非空表(ORA-01758).然后我将数据导出为SQL,删除行,添加PK并将其设置为非null,然后尝试导入数据,但我不断收到"无法将NULL插入id ..."的错误. (ORA-01400).

最后,我尝试使用迁移,正如Corey在他的评论中所建议的那样,但是当我手动更改数据库时,rake遇到了Oracle抛出的相同错误("无法将非空字段添加到非空表").我清理了表,运行了迁移(有效),然后尝试重新导入数据,但是上次我尝试导入时遇到了相同的错误("无法将NULL插入id ...").如何保存数据并添加我需要的主键?我知道有可能写一个rake任务,但我不确定如何继续前进.有任何想法吗?

oracle ruby-on-rails data-modeling primary-key ora-01400

5
推荐指数
2
解决办法
3947
查看次数

通过actionscript 3设置Flash中的阶段消失点

我正在与一些设计师合作,每个设计师都创建了3D动画(使用fp 10功能),以便在同一个Flash应用程序中使用.每个3D动画都是一个独特的动画片段,最终将成为同一个.fla文件的一部分.

我遇到的问题是每个动画片段都是在一个单独的.fla中创建的,每个.fla对舞台的消失点都有不同的设置.这意味着在将各种moveiclips导入到我的库中之后,没有任何可视资产像它们在源文件中那样对齐.flas.

好消息是,每次只显示其中一个动画片段,所以我不需要有多个消失点; 我需要做的就是在运行时的各个点以编程方式更改全局消失点.

我该怎么办?我尝试过访问root.transform.perspectiveProjection.projectionCenter并动态分配它的new Point(x, y)值,但它们似乎对3D动画片段没有任何影响.

谢谢!

3d actionscript-3 flashplayer-10

5
推荐指数
1
解决办法
2460
查看次数

Rails:Oracle约束违规

我正在继承我继承的Rails站点上进行维护工作; 它由Oracle数据库驱动,我可以访问该站点的开发和生产安装(每个都有自己的Oracle DB).我在尝试在生产站点上插入数据时遇到了Oracle错误,但是在开发站点上没有:

ActiveRecord::StatementInvalid (OCIError: ORA-00001: unique constraint (DATABASE_NAME.PK_REGISTRATION_OWNERSHIP) violated: INSERT INTO registration_ownerships (updated_at, company_ownership_id, created_by, updated_by, registration_id, created_at) VALUES ('2006-05-04 16:30:47', 3, NULL, NULL, 2920, '2006-05-04 16:30:47')):
/usr/local/lib/ruby/gems/1.8/gems/activerecord-oracle-adapter-1.0.0.9250/lib/active_record/connection_adapters/oracle_adapter.rb:221:in `execute'
app/controllers/vendors_controller.rb:94:in `create'
Run Code Online (Sandbox Code Playgroud)

据我所知(我使用Navicat作为Oracle客户端),开发站点的数据库架构与实际站点的数据库架构相同.我不是Oracle专家; 任何人都可以解释为什么我会在一次安装而不是另一次安装中得到错误?

顺便提一下,dev和production registration_ownerships表都填充了大量数据,包括country_ownership_id的重复条目(由索引PK_REGISTRATION_OWNERSHIP驱动).如果您需要更多信息进行故障排除,请与我们联系.对不起,我还没有给出更多,但我不确定哪些细节会有所帮助.

更新:我尝试在生产服务器上删除约束但它没有效果; 我也不想放弃索引,因为我不确定后果可能是什么,我不想让生产比现在更不稳定.

奇怪的是,我尝试手动执行抛出错误的SQL,并且Oracle接受了insert语句(尽管我必须使用字符串文字将日期包含在to_date()调用中以绕过"ORA-01861:文字不匹配"格式字符串"错误".这可能会发生什么?

oracle ruby-on-rails constraints ora-00001

5
推荐指数
1
解决办法
1446
查看次数

iOS 4.2.1 Mobile Safari不会显示海报图片

我一直在使用HTML5视频的iPad专用网站,虽然我有视频播放工作,但我不能为我的生活得到海报图像.它在Desktop Safari上看起来很好.这是代码:

<video src="video/about_the_man.mp4" controls height=360 width=480  poster="video/posters/about_the_man.jpg"></video>
Run Code Online (Sandbox Code Playgroud)

我使用此链接作为参考(清单1.2):http://developer.apple.com/library/safari/#documentation/AudioVideo/Conceptual/Using_HTML5_Audio_Video/AudioandVideoTagBasics/AudioandVideoTagBasics.html#//apple_ref/doc/uid/TP40009523-CH2-SW6

它说在iOS上会显示海报图像,直到用户启动播放,但现在我所得到的只是一个黑色视频大小的屏幕,中间有一个大的播放按钮.我已经看过这个顶部的其他帖子(这里这里),但这两个解决方案对我都没有用.关于该网站唯一有点不同寻常的是视频元素在内联灯箱中,所以最初在页面加载时它是不可见的,但我不知道为什么会产生影响.

有什么想法吗?

mobile-safari poster ipad html5-video

5
推荐指数
1
解决办法
4372
查看次数