我想做的事 ?
我不想在我的 Rails 视图文件中显示带有我的 Rails 模型中的 react.js 组件的数据。
我有的 ?
我已经安装了这些宝石
rails-admin
react-rails
我做了什么 ?
我创建了一个新的 Rails 项目。我安装了 react-rails gem 和 rails-admin gem 创建了具有以下类型的新控制器
rails g 脚手架帖子标题:字符串正文:文本
我可以从 Rails 管理员帖子中添加一切都很好。
我的控制器看起来像:
class PostsController < ApplicationController
before_action :set_post, only: [:show, :edit, :update, :destroy]
# GET /posts
# GET /posts.json
def index
@posts = Post.all
end
# GET /posts/1
# GET /posts/1.json
def show
@post = Post.find(params[:id])
end
# GET /posts/new
def new
@post = Post.new
end
这是我的意见/帖子/index.html.erb 文件
<%= react_component('PostList', {name: raw(render(template: 'posts/index', formats: :json)) }) %>
这是views/posts/index.json.jbuilder文件
json.array!(@posts) do |post|
json.extract! post, :id, :title, :body
json.url post_url(post, format: :json)
end
这是views/posts/show.json.jbuilder文件
json.extract! @post, :id, :title, :body, :created_at, :updated_at
这是我的反应组件文件 assets/javascripts/components/post_list.js.jsx
var PostList = React.createClass({
render: function() {
return (
<div>
{JSON.parse(this.props.posts).map(function(post) {
return <Post key={post.id} {... post} />;
})}
</div>
);
}
});
所以我不明白我错在哪里。我无法从 json 获取数据到 index.html.erb。我怎样才能做到这一点?请帮助我被卡住了,我在互联网上找不到任何可以理解的东西