summernote(数据未保存在数据库中)(laravel 5.2)
summernote (data not saving in DB) (laravel 5.2)
我正在使用 laravel 5.2 并在站点中集成 summernote js。
我希望当用户填写表格并点击保存时,所有数据都存储在数据库中。
它适用于单个字段,但不适用于两个或更多字段。
我的看法:
<form action="{{route('account')}}" id="acc" class="ac" method="post">
<div class="col-lg-3"><label>Estado</label>
@foreach($accounts as $account)
@if($user== $account->user)
{!! $account->estado !!}
<textarea style="display:none;" name="textfield4" id="textfield4"></textarea></div>
<div class="col-lg-2 es" id="estado"></div>
<a span class="fa fa-heartbeat" id="sex" aria-hidden="true">
</span></a>
</div>
<div class="col-lg-4"></div>
</div>
<div class="row">
<section class="col-lg-3"><div><br><label for="textfield5">I'm Good At:</label>
<p>{!! $account->goodat !!}</p>
<textarea style="display:none;" name="textfield5" id="textfield5"></textarea></div>
<div class="col-lg-2 es" id="goodat"></div>
@endif
@endforeach
我的 JS 在视图中:
<script>
var edit = function() {
$('#estado').summernote({focus: true});
$('#goodat').summernote({focus: true});
};
var save = function() {
var makrup = $('#estado').summernote('code');
$('#estado').summernote('destroy');
var makrup = $('#goodat').summernote('code');
$('#goodat').summernote('destroy');
};
$(".acc").submit(function(e) {
var self = this;
e.preventDefault();
//$('#estado').summernote('destroy');
var estado = $('#estado').summernote('code');
$("#textfield4").html(estado); //populate text area
var goodat = $('#goodat').summernote('code');
$("#textfield5").html(goodat); //populate text area
self.submit();
return false;
});
</script>
我的控制器:
se App\Account;
use Illuminate\Support\Facades\Auth;
class AccountController extends Controller
{
public function account(Request $request)
{
$account = new Account();
$account->estado = $request->input('textfield4');
$account->goodat = $request->input('textfield5');
$request->user()->accounts()->save($account);
return redirect()->route('myplace',['username'=>Auth::user()->username]);
}
}
您是否验证函数中存在请求输入?
也许你可以检查一下:
dd($request);
正如聊天中所讨论的那样https://chat.whosebug.com/rooms/122478缺少实际问题
$(document).ready(function() { ... });
和
$(".acc").submit(function(e) { ... });
表单的实际 class 是 .ac 而不是 .acc - 但是 id 是 acc
还必须更改编辑,因为当包装在就绪函数中时无法从 onclick 事件直接调用它。
在讨论中您可以找到页面的标记 - 将其粘贴到完整的 IDE 中会显示大量错误 - 因此我将提供更多有关代码状态的提示。
- 您有很多很多重复的 ID。不要将 id 设置为不需要由 id 标识的对象 - 没有必要。如果你有一个循环,你不能简单地说 id="example" - 每次你循环它都会创建一个具有相同 id 的实体。 jQuery 将无法识别它们。如果你想让它们全部使用 classes - 如果你想直接识别它们,请在循环中使用增量器
- 误用标记:
<ul>
标签中有不应该使用的 div。
</br>
是错误的,使用 <br>
或 <br/>
- 很多不关闭的标签 label B'day: 标签(两次打开)
- form action="http://localhost:8000/account" id="acc" class="ac" method="post" 没有关闭 - 没有
</form>
为此——不要忘记调用 Form::close()
尝试找一个合适的编辑器来帮助你处理这些东西。我使用的是 intellij webstorm,它实际上花费了一点(对学生免费)。
我正在使用 laravel 5.2 并在站点中集成 summernote js。
我希望当用户填写表格并点击保存时,所有数据都存储在数据库中。
它适用于单个字段,但不适用于两个或更多字段。
我的看法:
<form action="{{route('account')}}" id="acc" class="ac" method="post">
<div class="col-lg-3"><label>Estado</label>
@foreach($accounts as $account)
@if($user== $account->user)
{!! $account->estado !!}
<textarea style="display:none;" name="textfield4" id="textfield4"></textarea></div>
<div class="col-lg-2 es" id="estado"></div>
<a span class="fa fa-heartbeat" id="sex" aria-hidden="true">
</span></a>
</div>
<div class="col-lg-4"></div>
</div>
<div class="row">
<section class="col-lg-3"><div><br><label for="textfield5">I'm Good At:</label>
<p>{!! $account->goodat !!}</p>
<textarea style="display:none;" name="textfield5" id="textfield5"></textarea></div>
<div class="col-lg-2 es" id="goodat"></div>
@endif
@endforeach
我的 JS 在视图中:
<script>
var edit = function() {
$('#estado').summernote({focus: true});
$('#goodat').summernote({focus: true});
};
var save = function() {
var makrup = $('#estado').summernote('code');
$('#estado').summernote('destroy');
var makrup = $('#goodat').summernote('code');
$('#goodat').summernote('destroy');
};
$(".acc").submit(function(e) {
var self = this;
e.preventDefault();
//$('#estado').summernote('destroy');
var estado = $('#estado').summernote('code');
$("#textfield4").html(estado); //populate text area
var goodat = $('#goodat').summernote('code');
$("#textfield5").html(goodat); //populate text area
self.submit();
return false;
});
</script>
我的控制器:
se App\Account;
use Illuminate\Support\Facades\Auth;
class AccountController extends Controller
{
public function account(Request $request)
{
$account = new Account();
$account->estado = $request->input('textfield4');
$account->goodat = $request->input('textfield5');
$request->user()->accounts()->save($account);
return redirect()->route('myplace',['username'=>Auth::user()->username]);
}
}
您是否验证函数中存在请求输入?
也许你可以检查一下:
dd($request);
正如聊天中所讨论的那样https://chat.whosebug.com/rooms/122478缺少实际问题
$(document).ready(function() { ... });
和
$(".acc").submit(function(e) { ... });
表单的实际 class 是 .ac 而不是 .acc - 但是 id 是 acc
还必须更改编辑,因为当包装在就绪函数中时无法从 onclick 事件直接调用它。
在讨论中您可以找到页面的标记 - 将其粘贴到完整的 IDE 中会显示大量错误 - 因此我将提供更多有关代码状态的提示。
- 您有很多很多重复的 ID。不要将 id 设置为不需要由 id 标识的对象 - 没有必要。如果你有一个循环,你不能简单地说 id="example" - 每次你循环它都会创建一个具有相同 id 的实体。 jQuery 将无法识别它们。如果你想让它们全部使用 classes - 如果你想直接识别它们,请在循环中使用增量器
- 误用标记:
<ul>
标签中有不应该使用的 div。 </br>
是错误的,使用<br>
或<br/>
- 很多不关闭的标签 label B'day: 标签(两次打开)
- form action="http://localhost:8000/account" id="acc" class="ac" method="post" 没有关闭 - 没有
</form>
为此——不要忘记调用 Form::close()
尝试找一个合适的编辑器来帮助你处理这些东西。我使用的是 intellij webstorm,它实际上花费了一点(对学生免费)。