是否存在一些隐藏的Ruby/Rails-magic,只有在它存在时才调用方法?
让我们说我想打电话
resource.phone_number
Run Code Online (Sandbox Code Playgroud)
但我事先不知道资源是否响应phone_number.一种方法是
resource.phone_number if resource.respond_to? :phone_number
Run Code Online (Sandbox Code Playgroud)
如果在错误的地方使用,那就不是那么好了.我很好奇,如果存在的东西更像是如何try使用(resource.try(:phone_number)).
该RemoteControlClient在ICS推出.这就是锁屏似乎与各种音乐播放器融为一体的方式.有关锁定屏幕上的Spotify示例,请参阅下面的屏幕截图.

可以从锁定屏幕以外的其他应用程序中集成所有玩家吗?
我发现文档在这个问题上缺乏一点点,但我认为如果可能的话,结果可能会很有趣.
编辑:
到目前为止的进展:没有.我发现的是IRemoteControlDisplay可能在其中有一部分,但我的Android/Java技能有点缺乏实际了解如何实现它并实现与锁定屏幕相同的功能.
我想从一个函数返回 2 个或更多任务,这些任务应该在它们插入依赖项的位置按顺序运行,请参见下文。
t1 = PythonOperator()
def generate_tasks():
t2 = PythonOperator()
t3 = PythonOperator()
return magic(t2, t3) # magic needed here (preferably)
t1 >> generate_tasks() # otherwise here
# desired result: t1 >> t2 >> t3
Run Code Online (Sandbox Code Playgroud)
这可行吗?据我了解,Airflow 2.0 似乎通过 TaskGroup 实现了这一点,但我们使用的是 Google 的 Composer,2.0 暂时不会可用。
我发现的最佳解决方法:
t1 = PythonOperator()
def generate_tasks():
t2 = PythonOperator()
t3 = PythonOperator()
return [t2, t3]
tasks = generate_tasks()
t1 >> tasks[0] >> tasks[1]
Run Code Online (Sandbox Code Playgroud)
但我真的希望将其抽象化,因为它或多或少违背了从单个函数返回多个运算符的目的。我们希望它是最终用户所知的单个单元,即使它可以由 2 个或更多任务组成。
如何使用 Airflow 2.0 中的 TaskGroup 来完成此操作:
class Encryptor:
def …Run Code Online (Sandbox Code Playgroud)