好的,所以当我遇到" 从已从磁盘中删除的Git仓库中删除多个文件 "时,我正在搜索"如何从Git中删除手动删除的文件"而不实际git rm file.txt为每个文件执行操作.
两个最受欢迎的命令是:
git add -ugit add -A虽然它们都适合我,但我仍然无法理解其中的差异,并且页面上的解决方案也没有解释.我的问题是,它们如何彼此不同,以及可以使用哪些其他git命令来删除从磁盘手动删除的文件?
我试图建立Android新的收件箱样式列表视图左右滑动,如图所示,我尝试了47deg swipelistview但它不稳定,有没有其他库可用?!
到目前为止尝试了47度
public class MainActivity extends Activity {
Listview pullToRefreshListView;
SwipeListView swipelistview;
ItemAdapter adapter;
List<ItemRow> itemData;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
pullToRefreshListView = (ListView) findViewById(R.id.example_swipe_lv_list);
swipelistview = pullToRefreshListView.getRefreshableView();
itemData = new ArrayList<ItemRow>();
adapter = new ItemAdapter(this, R.layout.custom_row, itemData);
swipelistview.setSwipeListViewListener(new BaseSwipeListViewListener() {
@Override
public void onOpened(int position, boolean toRight) {
if (toRight) {
adapter.remove(position);
Toast.makeText(MainActivity.this, "Open to dismiss",
Toast.LENGTH_SHORT).show();
} // swipelistview.dismiss(position);
else {
Toast.makeText(MainActivity.this, "Open to edit",
Toast.LENGTH_SHORT).show();
}
}
@Override
public void onClosed(int …Run Code Online (Sandbox Code Playgroud) 尝试更新(或创建)记录时,我收到无效的CSRF令牌错误.我正在使用Elixir v1.0.3,Erlang/OTP 17 [erts-6.3]和Phoenix v0.8.0(我想,我不知道如何查看Phoenix的版本).我正在创建一个Web应用程序,主要遵循Phoenix指南和Elixir Dose Jobsite示例资源.但是,当我尝试从html表单发布信息时,我收到无效的CSRF令牌错误.根据错误中给出的建议,我将'x-csrf-token':csrf_token添加到操作中.
edit.html.eex:
<h2>Edit Directory</h2>
<form class="form-horizontal" action="<%= directory_path @conn, :update, @directory.id, 'x-csrf-token': @csrf_token %>" method="post">
<div class="form-group">
<label for="directory" class="col-sm-2 control-label">Directory</label>
<div class="col-sm-10">
<input type="hidden" name="_method" value="PATCH">
<input type="text" class="form-control" value="<%= @directory.directory %>" name="directory" placeholder="Directory" required="required">
</div>
</div>
...
Run Code Online (Sandbox Code Playgroud)
但是我收到以下错误:
[error] #PID<0.579.0> running Ainur.Endpoint terminated
Server: localhost:4000 (http)
Request: POST /config/directories/2?x-csrf-token=
** (exit) an exception was raised:
** (Plug.CSRFProtection.InvalidCSRFTokenError) Invalid CSRF (Cross Site Forgery Protection) token. Make sure that all your non-HEAD and non-GET …Run Code Online (Sandbox Code Playgroud) 我创建了我的第一个Elixir- Phoenix应用程序.我已经写了一些我想在多个控制器中使用的插件,现在有很多代码重复,因为插件代码在我的所有控制器中重复.
我的问题是,是否有一个文件,我可以把所有的插头,然后访问并使用不同的控制器?
# somefile to define my plugs
defp load_subject(conn, _) do
subject = Subject |> Repo.get conn.params["subject_id"]
assign(conn, :subject, subject)
end
defp load_topic(conn, _) do
topic = Topic |> Repo.get conn.params["topic_id"]
conn |> assign :topic, topic
end
Run Code Online (Sandbox Code Playgroud)
然后在我的控制器中使用它们:
# First Controller
defmodule MyApp.FirstController do
use MyApp.Web, :controller
plug :load_subject
plug :load_topic
plug :action
def some_action(conn, _) do
# do something
end
def another_action(conn, _) do
# do some other thing
end
end …Run Code Online (Sandbox Code Playgroud) 如何在Elixir中迭代地图的键值对?
这不起作用:
my_map = %{a: 1, b: 2, c: 3}
Enum.each my_map, fn %{k => v} ->
IO.puts "#{k} --> #{v}"
end
Run Code Online (Sandbox Code Playgroud) 我正在部署我的第一个Phoenix应用程序,并且我在环境文件(dev.exs和prod.exs)中指定了变量的值.
现在我想弄清楚如何在我的控制器中访问它们.
# config/dev.exs
config :my_app, MyApp.Endpoint,
http: [port: 4000],
debug_errors: true,
cache_static_lookup: false,
my_var: "DEVELOPMENT VALUE"
# config/prod.exs
config :my_app, MyApp.Endpoint,
http: [port: {:system, "PORT"}],
url: [host: "example.com"],
my_var: "PRODUCTION VALUE"
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建指向我网站的Facebook页面标签.Facebook将HTTP POST请求发送到我网站的网址.这里的问题是服务器有一个内置的CSRF检查,它返回以下错误:
(Plug.CSRFProtection.InvalidCSRFTokenError) invalid CSRF (Cross Site Forgery Protection) token, make sure all requests include a '_csrf_token' param or an 'x-csrf-token' header`
Run Code Online (Sandbox Code Playgroud)
服务器需要Facebook不能拥有的CSRF令牌.所以,我想有选择地为路径www.mywebsite.com/facebook禁用CSRF.
我怎么能在Phoenix Framework中做到这一点?
我用GenServer编写了一个Elixir应用程序,它在启动时启动外部应用程序并关闭它并在退出时进行其他清理.我在init/1回调中的回调和清理代码中添加了启动功能terminate/2.
在init当GenServer开始代码工作正常,并且terminate也被称为方法中,当:stop被手动发送信号,但在意外停机和中断的情况下(如在按下Ctrl + C的情况下)在IEx标志,该终止代码是不叫.
目前,我已经完成了大量的论坛帖子,博客文章和文档,包括:
如果在没有捕获退出时从任何进程
GenServer接收到退出信号(即不是:normal),它将以相同的原因突然退出,因此不会调用terminate/2.请注意,过程确实NOT默认陷阱退出,并且当链接的过程退出或它的节点断开发送一个退出信号.因此,不保证
terminate/2在GenServer退出时调用 .出于这些原因,我们通常建议通过使用监控或链接本身在分离的流程中实现重要的清理规则.
但我完全不知道如何获得:init.stop,linked processes或其他任何与此相关的工作(因为这是我第一次使用GenServers).
这是我的代码:
defmodule MyAwesomeApp do
use GenServer
def start do
GenServer.start_link(__MODULE__, nil)
end
def init(state) do
# Do Bootup stuff
IO.puts "Starting: #{inspect(state)}"
{:ok, state}
end
def terminate(reason, state) do …Run Code Online (Sandbox Code Playgroud) 我在elixir中有一个属性的模块:
defmodule MyAwesomeModule do
@awesome_number 7
# other stuff...
end
Run Code Online (Sandbox Code Playgroud)
我无法访问@awesome_number模块外部.我尝试过使用该Module.get_attribute/2方法,但它会抛出此错误:
iex(79)> Module.get_attribute(MyAwesomeModule, :awesome_number)
** (ArgumentError) could not call get_attribute on module MyAwesomeModule because it was already compiled
(elixir) lib/module.ex:1101: Module.assert_not_compiled!/2
(elixir) lib/module.ex:1016: Module.get_attribute/3
Run Code Online (Sandbox Code Playgroud)
所以现在,我将模块属性包装在一个方法中来访问它,但它对我来说并没有多大意义.我可以简单地使用该方法并停止一起使用该属性:
defmodule MyAwesomeModule do
@awesome_number 7
def awesome_number, do: @awesome_number
# other stuff...
end
Run Code Online (Sandbox Code Playgroud)
所以我的问题是,有更好/正确的方法吗?
我刚刚开始研究我的第一个凤凰应用程序,问题是我的控制器中的每个操作都有一些共同的代码行,我想分开.他们从多个Ecto模型中获取数据并将其保存到变量中以供使用.
在Rails中,我可以简单地定义一个方法并before_filter在我的控制器中调用它.我可以从一个访问结果@variable.我知道使用Plugs是关键,但我不知道如何实现这一点,更具体地说:
params来自的请求Plug作为参考,这是我正在尝试做的rails版本:
class ClassController < ApplicationController
before_filter :load_my_models
def action_one
# Do something with @class, @students, @subject and @topics
end
def action_two
# Do something with @class, @students, @subject and @topics
end
def action_three
# Do something with @class, @students, @subject and @topics
end
def load_my_models
@class = Class.find params[:class_id]
@subject = Subject.find params[:subject_id]
@students = @class.students
@topics = @subject.topics
end
end
Run Code Online (Sandbox Code Playgroud)
谢谢!